Max Kellermann
c7b80b0828
io/FileDescriptor: add method WriteAt()
2024-08-30 12:29:32 +02:00
Max Kellermann
59199b5620
io/FileDescriptor: pass std::span to ReadAt()
2024-08-30 12:29:27 +02:00
Max Kellermann
ebfc83dac5
io/FileDescriptor: add method SetPipeCapacity()
2024-08-30 12:28:51 +02:00
Max Kellermann
f535ccf9bf
net/UniqueSocketDescriptor: add UniqueFileDescriptor constructor
2024-08-30 12:28:19 +02:00
Max Kellermann
75eb2c257c
net/SocketError: add IsSocketError() overload with socket_error_t
2024-08-30 12:27:19 +02:00
Max Kellermann
314667259e
net/SocketDescriptor: add Duplicate() method
...
The the Duplicate() method we inherited from class FileDescriptor
returns a UniqueFileDescriptor, but we really want to return a
UniqueSocketDescriptor.
2024-08-30 12:27:13 +02:00
Max Kellermann
dbb2b29271
net/IPv6Address: add method GetPortBE()
2024-08-30 12:24:12 +02:00
Max Kellermann
7f25ede888
net/AddressInfo: add method Cast()
2024-08-30 12:23:45 +02:00
Max Kellermann
4a2fff019a
util/DisposablePointer: suppress -Wuninitialized
...
I pretend to know what I'm doing :-)
2024-08-30 12:23:45 +02:00
Max Kellermann
fae5d16d43
subprojects: update curl to 8.9.1-1
2024-08-30 12:23:41 +02:00
Max Kellermann
7bc2259b35
subprojects: update sqlite3 to 3.46.1-1
2024-08-30 12:23:27 +02:00
Max Kellermann
f66aed921c
python/build/libs: update FFmpeg to 7.0.2
2024-08-30 12:22:37 +02:00
Max Kellermann
965c466e9b
Merge branch 'mpg-duration-fix' of https://github.com/boedy/MPD
2024-08-10 16:54:48 +02:00
boedy
731f20111a
Override the value for file size in bytes. Useful for getting sensible track length values in feed mode or for HTTP streams.
...
https://www.mpg123.de/api/group__mpg123__status.shtml#gad0301e80dbc3f48e47e27d39cd328755
2024-08-08 18:43:15 +02:00
Max Kellermann
f7790430a0
lib/curl/Multi: add SetSocketFunction(), SetTimerFunction()
2024-07-31 10:06:29 +02:00
Max Kellermann
959826d1d1
input/ffmpeg: offload FFmpeg calls to thread
...
Prepare for interruptible I/O.
2024-07-30 12:43:05 +02:00
Max Kellermann
ec30716e01
input/thread: implement size and seek
2024-07-30 12:33:44 +02:00
Max Kellermann
dc51015c75
input/mms: move MMS_BUFFER_SIZE into the class
2024-07-30 12:33:30 +02:00
Max Kellermann
72b0eeb7b1
input/mms: invoke Start() in constructor
2024-07-30 12:31:58 +02:00
Max Kellermann
b050e0132e
input/{async,thread}: add an additional Cond field
...
This eliminates the ScopeExchangeInputStreamHandler kludge.
2024-07-29 23:17:33 +02:00
Max Kellermann
cf962d94c7
input/thread: remove bogus `inline`
2024-07-29 23:14:16 +02:00
Max Kellermann
c29d23b4c3
input/thread: use notify_one() instead of notify_all()
...
There's only ever one waiter, and notify_one() may be faster than
notify_all().
2024-07-29 23:09:07 +02:00
Max Kellermann
61e8df913d
input/thread: check IsEOF() in IsAvailable()
2024-07-29 23:05:00 +02:00
Max Kellermann
4a55e3e8bd
input/thread: check buffer.empty() in IsEOF()
2024-07-29 23:03:00 +02:00
Max Kellermann
2e78bd430c
input/thread: use pass std::span<std::byte> to ThreadRead()
2024-07-29 22:32:52 +02:00
Max Kellermann
dbaa72cb40
util/CircularBuffer: use std::span internally
2024-07-29 22:24:54 +02:00
Max Kellermann
596d2d93dd
util/CircularBuffer: use `using` instead of `typedef`
2024-07-29 22:21:38 +02:00
Max Kellermann
10311b3a65
util/CircularBuffer: explicitly forbid the copy operator
2024-07-29 22:20:15 +02:00
Max Kellermann
332ba42073
util/HugeAllocator: add std::span cast operator
2024-07-29 22:20:12 +02:00
Max Kellermann
4262d29965
util/HugeAllocator: add `constexpr`
2024-07-29 22:19:28 +02:00
Max Kellermann
0899d80ae0
util/CircularBuffer: add `noexcept` and `constexpr`
2024-07-29 22:14:59 +02:00
Max Kellermann
9fe6493fc2
util/CircularBuffer: use inline initializer
2024-07-29 22:13:50 +02:00
Max Kellermann
902cb8efac
input/thread: use std::byte instead of uint8_t
2024-07-29 22:13:50 +02:00
Max Kellermann
f54210bf68
input/async: move enum definition down
2024-07-29 22:13:42 +02:00
Max Kellermann
fb151c8662
lib/fmt/meson.build: suppress -Warray-bounds with GCC 13
2024-07-29 22:13:11 +02:00
Max Kellermann
323517753d
lib/fmt/meson.build: remove obsolete clang 14 workaround
...
Android NDK r27 has clang 18 and I don't feel like supporting clang 14.
2024-07-29 22:11:20 +02:00
Max Kellermann
5726d9f06a
mixer/Memento: include cleanup
2024-07-29 17:04:53 +02:00
Max Kellermann
0992fab1c8
filter/ReplayGain: include cleanup
2024-07-29 17:04:30 +02:00
Max Kellermann
b546ddc54c
client/Idle: include cleanup
2024-07-29 17:03:59 +02:00
Max Kellermann
d45b7cc972
IdleFlags: move to procool/
2024-07-29 17:02:33 +02:00
Max Kellermann
12eaaef210
output/Thread: allow Delay() to return duration::max()
...
Eliminate the periodic wakeups while paused in some output plugins.
2024-07-29 16:52:36 +02:00
Max Kellermann
5b8ef9a62b
python/build/__init__.py: add missing file
2024-07-29 16:51:40 +02:00
Max Kellermann
196258ea13
.github/workflows/build_android.yml: update NDK to r27
2024-07-29 16:38:26 +02:00
Max Kellermann
0a035f3ce0
output/alsa: add option "close_on_pause"
...
This allows keeping the ALSA PCM open even if playback is paused. As
a side effect, this allows using the "always_on" option with ALSA
outputs, because "always_on" pauses the output.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1623
2024-07-29 16:31:09 +02:00
Max Kellermann
7ab789fbaf
doc/user.rst: add clarification to the "always_on" option
2024-07-29 16:30:15 +02:00
Max Kellermann
9c8f4aaf99
lib/alsa/meson.build: require libasound 1.2 or later
...
This allows us to drop the 1.1.4 snd_pcm_drain() bug workaround (added
by commit f85d4d28d1
).
2024-07-29 15:42:46 +02:00
Max Kellermann
3bef4f839a
output/alsa: fix coding style
2024-07-29 15:40:52 +02:00
Max Kellermann
1dfda3a5e1
output/alsa: reorder fields to improve packing
2024-07-29 15:38:02 +02:00
Max Kellermann
9d9c4045e2
output/alsa: move redundant code to UnregisterSockets()
2024-07-29 15:28:58 +02:00
Max Kellermann
d466deedad
output/alsa: fix lambda indent
2024-07-29 15:28:27 +02:00