Oystein Kristoffer Tveit
06c56eb047
WIP: rtkit support
2024-11-25 08:52:41 +01:00
Oystein Kristoffer Tveit
1adc5e6495
Add nix-shell
2024-11-25 08:44:33 +01:00
borine
78e643150f
output/Source: fix Close()
...
Close the filter before cancelling when closing a source.
Fixes #2148
2024-11-19 10:59:35 +00:00
Max Kellermann
eb1463fd7c
test/util/TestIntrusiveTreeSet: add constant_time_size test
2024-11-13 10:44:28 +01:00
Max Kellermann
6dce8dcaa5
io/FileDescriptor: add readv()/writev() wrappers
2024-11-13 10:44:03 +01:00
Max Kellermann
fc4a579d83
io/FileDescriptor: remove Read()/Write() with void pointers
...
Obsolete and unsafe.
2024-11-13 10:43:34 +01:00
Max Kellermann
263b9916c2
unix/PidFile: pass std::span to FileDescriptor::Read()
2024-11-13 10:43:33 +01:00
Max Kellermann
16604997d6
system/{Event,Signal}FD: pass std::span to FileDescriptor::Read()
2024-11-13 10:43:08 +01:00
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