Commit Graph

18757 Commits

Author SHA1 Message Date
Max Kellermann 77226bc0d8 test/ReadFrames: pass std::span to FileDescriptor::Read() 2024-11-13 10:42:35 +01:00
Max Kellermann 7a6672b7ed util/IntrusiveTreeSet: update the counter, fixing constant_time_size 2024-11-13 10:36:57 +01:00
Max Kellermann 8db14c9cb3 Instance: add method FindOutput()
Move code from handle_moveoutput().
2024-11-11 19:08:45 +01:00
Max Kellermann 370df37596 io/uring/Ring: add more API documentation 2024-11-11 19:04:24 +01:00
Max Kellermann 84e3501084 io/uring/Queue: remove redundant include 2024-11-11 19:04:21 +01:00
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 76562fc093 test/run_{filter,output}: use fmt 2024-11-05 11:48:37 +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
Pascal Nkornyui 2c881c63ba
doc/plugins.rst: fix spelling 2024-11-02 19:37:13 +00: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 2ef36af68d test/run_filter: add command line parser 2024-10-30 22:17:42 +01:00
Max Kellermann d7b4634e5e io/FileLineReader: add missing include 2024-10-30 21:47:37 +01:00
Max Kellermann 2bc57c38d2 meson.build: set cpp_std=c++20
Meson supports this since version 0.57.0.
2024-10-30 21:37:49 +01:00
Max Kellermann 744308bfff python/build/libs.py: update FFmpeg to 7.1 2024-10-30 21:31:17 +01:00
Max Kellermann 7db93fb20b subprojects: update sqlite3 to 3.47.0-1 2024-10-30 21:29:57 +01:00
Max Kellermann 95db2db736 subprojects: update curl to 8.10.1-1 2024-10-30 21:29:47 +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
Max Kellermann f82a385be2 Merge branch 'tagtypes_available' of https://github.com/jcorporation/MPD 2024-10-26 08:10:07 +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