Max Kellermann
a7d41a99a1
util/ForeignFifoBuffer: pass std::span to constructor
2024-11-11 19:03:31 +01:00
Max Kellermann
c9c5e84119
util/ForeignFifoBuffer: store buffer as std::span
2024-11-11 19:02:58 +01:00
Max Kellermann
8a3b48754e
util/ForeignFifoBuffer: use Read() in MoveBuffer() and Shift()
2024-11-11 19:02:43 +01:00
Max Kellermann
849c4012c0
filter/Filter: add method ReadMore()
...
This allows FilterPCM() to return more data, which some
implementations may need to do (e.g. FFmpeg).
2024-11-08 19:31:16 +01:00
Max Kellermann
d8bb833ba3
output/Source: convert runtime check to assert()
...
Flush() may only be called if the source is open.
2024-11-08 19:09:31 +01:00
Max Kellermann
4d8a2ea688
output/Source: add assert(filter)
2024-11-08 18:50:48 +01:00
Max Kellermann
a7a61e9e41
output/Source: add inline
2024-11-08 18:34:22 +01:00
Max Kellermann
415cf096e9
output/Thread: add another inline
2024-11-08 18:24:48 +01:00
Max Kellermann
7774c3369e
filter/two: check empty() instead of data()==nullptr
...
See bcab29d53a
2024-11-05 22:37:36 +01:00
Max Kellermann
bcab29d53a
filter/Filter: Flush() returns empty span, not nullptr
2024-11-05 13:19:25 +01:00
Max Kellermann
d6195025fb
filter/Filter: clarify Flush() documentation
2024-11-05 13:11:25 +01:00
Max Kellermann
d7ae512b5e
filter/Filter: clarify that the FilterPCM() return value may be empty
...
And adjust TwoFilter accordingly.
2024-11-05 12:35:10 +01:00
Max Kellermann
b7b4c6b4ea
filter/Filter: Flush() also invalidates the returned buffer
...
Just API documentation.
2024-11-05 12:35:09 +01:00
Max Kellermann
f59f17013d
MusicChunk: add method ReadData()
2024-11-05 12:34:35 +01:00
Max Kellermann
4beedec3ad
MusicChunk: add missing include
2024-11-05 12:31:30 +01:00
Max Kellermann
950888d161
output/Source: fix indent
2024-11-05 12:28:41 +01:00
Max Kellermann
0676ab7f47
filter/two: use if
with initializer
2024-11-02 22:48:02 +01:00
Max Kellermann
fc5d258890
filter/ffmpeg: fill AVFrame::pts
...
Some libavfilter plugins don't produce any output if `pts` is never
set, e.g. the `lowpass` plugin.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/2114
2024-11-02 22:24:53 +01:00
Max Kellermann
7dce7ad32d
Merge branch 'tagtypes_reset' of https://github.com/jcorporation/MPD
2024-11-02 20:58:06 +01:00
Max Kellermann
fa29693550
filter/ffmpeg: implement method Flush()
2024-11-02 20:55:04 +01:00
jcorporation
fd7d251358
Add "reset" subcommand to tagtypes.
...
This subcommand combines "clear" and "enable" in one command.
2024-11-01 18:07:06 +01:00
Max Kellermann
acb9ee9792
filter/ffmpeg: move code to ReadOutput()
2024-10-30 22:49:20 +01:00
Max Kellermann
3d99f1d8a6
filter/ffmpeg: use if
with initializer
2024-10-30 22:47:21 +01:00
Max Kellermann
d7b4634e5e
io/FileLineReader: add missing include
2024-10-30 21:47:37 +01:00
Max Kellermann
f807345022
event/Loop: use std::chrono::ceil()
...
Thanks to C++17, we don't need our custom implementation anymore.
2024-10-30 21:29:16 +01:00
Max Kellermann
b745d1f226
util/StringCompare: add constexpr
2024-10-30 21:29:16 +01:00
Max Kellermann
52e2130d51
util/StringCompare: simplify StringIsEqual() using operator==
2024-10-30 21:28:15 +01:00
Max Kellermann
1930ed16cb
Merge branch 'icu76-support' of https://github.com/cho-m/MPD
2024-10-27 15:22:04 +01:00
Michael Cho
1a063fee7e
meson.build: support building with ICU 76
...
ICU 76 decided to reduce overlinking[^1] thus `icu-i18n` will no longer
add `icu-uc` when linking to shared libraries. This results in failure:
```
src/lib/icu/libicu.a.p/Converter.cxx.o: undefined reference to symbol 'ucnv_fromUnicode_76'
```
[^1]: 199bc82702
2024-10-27 09:57:22 -04:00
jcorporation
51e0fefda7
Fix order of commands
2024-10-26 11:32:36 +02:00
Max Kellermann
449f8af7d0
Merge branch 'protocol_features' of https://github.com/jcorporation/MPD
2024-10-26 08:18:56 +02:00
Max Kellermann
38b46e680a
Merge branch 'stickernames-types' of https://github.com/jcorporation/MPD
2024-10-26 08:16:53 +02:00
Max Kellermann
17d0cd0abd
Merge branch 'queue_loaded_playlist' of https://github.com/jcorporation/MPD
2024-10-26 08:15:23 +02:00
Max Kellermann
98bc63251e
Merge branch 'searchplaylist_pos' of https://github.com/jcorporation/MPD
2024-10-26 08:14:31 +02:00
Max Kellermann
030bac441f
Merge branch 'playlistlength_fix' of https://github.com/jcorporation/MPD
2024-10-26 08:13:14 +02:00
jcorporation
052719c0e4
Fix integer overflow calculating length of very large playlists
2024-10-20 12:12:50 +02:00
jcorporation
bfbff31860
Store last loaded playlist
...
Stores the last loaded playlist uri in the queue struct.
Last loaded playlist is set on load command and cleared with the clear command.
The last loaded playlist is printed in the status command and saved / restored from the partition state file.
Resolves issue #938
2024-10-20 12:03:31 +02:00
jcorporation
b1067333dc
Print positions in the search playlist functions.
2024-10-20 11:55:52 +02:00
jcorporation
23c2bba483
This commit adds a new protocol command to toggle protocol features
...
for a client connection. It works like the tag_mask and the associated
tagtypes command.
New commands:
- protocol
Shows enabled protocol features.
- protocol available
Show all available protocol features.
- protocol enable {feature...}
Enables protocol features.
- protocol disable {feature...}
Disables protocol features.
- protocol all
Enables all available protocol features.
- protocol clear
Disables all protocol features.
This commit adds also the first protocol feature.
hide_playlists_in_root
Disables the listing of playlists in the root folder
for the lsinfo command.
2024-09-28 22:41:35 +02:00
jcorporation
25e8ce2d37
New command tagtypes available
...
Shows the list of tag types configured by the ``metadata_to_use`` setting.
2024-09-28 22:40:29 +02:00
Max Kellermann
752c6c1f03
lib/fmt/ExceptionFormatter: move the exception_ptr
2024-09-27 08:48:30 +02:00
Max Kellermann
def2221dfd
Merge branch 'searchplaylist_syntax' of https://github.com/jcorporation/MPD
2024-09-27 08:47:02 +02:00
Max Kellermann
9ff8e02e54
net/Resolver: use StringIsEqual()
2024-09-04 17:26:45 +02:00
Max Kellermann
32dd9704ce
util/DeleteDisposer: add const
and noexcept
2024-09-04 17:24:42 +02:00
Max Kellermann
523519182a
util/IntrusiveHashSet: add concept checks
2024-09-04 17:24:24 +02:00
jcorporation
3f718e8924
Change the semantic of the searchplaylist protocol command
...
Old: searchplaylist {NAME} {FILTER} [{START:END}]
New: searchplaylist {NAME} {FILTER} [window {START:END}]
This is more similar to the other search commands and we can reuse search specific functions in libmpdclient.
2024-08-30 21:06:50 +02:00
jcorporation
26c4211cd4
New command stickernamestypes
...
Lists sticker names with their types and optionally filters by type
2024-08-30 20:14:55 +02:00
Max Kellermann
a3a07280e8
Merge branch 'mpd-2100-nested-and' of https://github.com/m7a/mpd
2024-08-30 12:57:20 +02:00
Max Kellermann
ed755f04e9
lib/fmt/meson.build: suppress -Warray-bounds with GCC 14
...
The bug is still present in GCC 14.
2024-08-30 12:48:41 +02:00
Max Kellermann
2809db8b40
Merge branch 'searchplaylist' of https://github.com/jcorporation/MPD
2024-08-30 12:47:24 +02:00