Max Kellermann
1afa33c3c7
db/simple/Song: Export() merges tags with "target"
...
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1048
2021-01-21 13:57:59 +01:00
Max Kellermann
3a7c9c7c84
db/simple/ExportedSong: add option to own a Tag
2021-01-21 13:52:01 +01:00
Max Kellermann
6d08e761c8
db/simple/ExportedSong: new class
2021-01-21 13:52:01 +01:00
Max Kellermann
fee282f49c
SongPrint: use LightSong::GetDuration()
...
This properly prints the "Time"/"duration" values for songs in virtual
CUE folders.
This is loosely related to
https://github.com/MusicPlayerDaemon/MPD/issues/1048
2021-01-21 13:52:00 +01:00
Max Kellermann
07d2bc6898
util/StringView: add method SplitLast()
2021-01-21 13:20:01 +01:00
Max Kellermann
9551166f27
command/file: use %zu to format a size_t
...
`PRIoffset` was wrong, because it expects an `offset_type`
(i.e. `uint64_t`). This broke on 32 bit machines where `size_t` has
32 bits.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1058
2021-01-20 20:44:47 +01:00
Max Kellermann
2a8c420cff
client/Response: add `printf` attribute
2021-01-20 20:43:16 +01:00
Max Kellermann
ec1e04a65d
Merge branch 'bugfix/1043/remove-basepath-handling' of git://github.com/PVince81/MPD into v0.22.x
2021-01-20 20:02:31 +01:00
Max Kellermann
97a2122f41
doc/mpd.conf.5.rst: updated ReplayGain website links
...
"The documentation for mpd.conf still links to https://replaygain.org
– according to archive.org, this domain has been defunct since
2014-09-14, shortly after got domain squatted and ever since hosts
dubious content."
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1050
2021-01-20 14:58:35 +01:00
Max Kellermann
3825175bfc
python/build/ffmpeg.py: remove obsolete -no-integrated-as workaround
2021-01-19 20:17:47 +01:00
Max Kellermann
68f4be323c
doc/user.rst: require Android NDK r22
2021-01-19 20:17:36 +01:00
Max Kellermann
4949cd98f3
output/sles: add missing include for assert()
2021-01-19 20:17:17 +01:00
Max Kellermann
a14ce4c7cb
lib/pcre/RegexPointer: work around bogus -Wmaybe-uninitialized with GCC 11
2021-01-19 19:58:04 +01:00
Max Kellermann
85a5b7dec4
python/build/libs.py: update CURL to 7.74.0
2021-01-19 18:08:17 +01:00
Max Kellermann
153d464ce8
python/build/libs.py: update Boost to 1.75.0
2021-01-19 18:05:17 +01:00
Itai Y. Efrat
83391e2bd9
doc/protocol.rst: fix playlist(find|search)
...
The `{TAG} {NEEDLE}` input format documented seems to be a holdover
of pre-0.21 filters, and the commands support the new format.
2021-01-19 17:27:14 +01:00
Vincent Petry
ec0d3ac95d
Remove relative path handling which was not needed
...
The original base relative path was introduced due to an erroneous test
where the URL started with three slashes: "https:/// " instead of two,
which led to implementing handling for such cases but broke the two
slashes case.
This fix removes the base relative path handling because with two
slashes the path is anyway always relative to the host (aka absolute
URI, without host).
This reverts 216f62ea14
and part of 74b2fc7fdc
Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
2021-01-08 16:50:27 +01:00
Max Kellermann
e99f6b5b38
Merge branch 'bugfix/1039/fix-webdav' of git://github.com/PVince81/MPD into v0.22.x
...
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1039
2021-01-05 13:09:15 +01:00
Vincent Petry
74b2fc7fdc
Use uri_has_scheme for Webdav response href
...
Use uri_has_scheme to find out if the href in Webdav responses is absolute
to use the matching base path extraction.
Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
2021-01-05 12:04:08 +01:00
Vincent Petry
216f62ea14
Webdav href in response can be relative
...
Fixed Webdav base path stripping in cases where href is a relative path.
Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
2021-01-04 21:50:03 +01:00
Vincent Petry
b7d0001390
Fix parsing propstat blocks
...
There can be more than one propstat block each with their own status
code. We're only interested in the one with the 200 status, the found
properties.
This fixes parsing to make sure we process all propstat blocks instead
of just the last one, which might have a 404 status for not-found
properties.
Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
2021-01-04 21:49:38 +01:00
Vincent Petry
687788e4d3
Fix Webdav storage PROPFIND request
...
Remove additional "a:prop" in PROPFIND request to match RFC 4918 section 9.1.3.
Added Content-Type header as the body is not a true multipart POST.
Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
2021-01-04 14:28:42 +01:00
Max Kellermann
5348f8c9c8
copyright year 2021
2021-01-01 19:54:28 +01:00
Max Kellermann
5a4ebf8291
doc/protocol.rst: document that tag changed trigger "player" idle event
2020-12-18 20:41:43 +01:00
Itai Y. Efrat
7ae3664c91
doc/protocol.rst: fix MPD version on `oneshot`
2020-12-16 19:36:16 +02:00
Itai Y. Efrat
1caed3e390
doc/protocol.rst: fix mistake in footnotes
2020-12-16 19:06:47 +02:00
EdJoPaTo
7adb907a55
doc/protocol.rst: ensure all commands have targets
2020-12-15 14:10:28 +01:00
kaliko
af2896547a
doc/protocol.rst: Add missing "originaldate" to the list of supported tags
2020-12-14 13:03:30 +01:00
Max Kellermann
d9583faf06
input/{tidal,qobus}: add missing includes for assert()
2020-12-01 17:14:11 +01:00
Max Kellermann
2788cf9330
input/tidal: add missing include for assert()
2020-12-01 17:13:13 +01:00
Danilo Spinella
92bfdffa42
lib/ffmpeg/Filter: Add define required for avutil
2020-11-30 20:06:21 +01:00
Max Kellermann
38b41fc3fd
filter/ffmpeg: detect the output sample format
...
Some FFmpeg filters change the sample format, and since MPD assumes
this never happens, this results in loud noise instead of music. This
commit finally implements the TODO comment by sending one frame of
silence to the filter and checking the output frame's format.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1009
2020-11-16 09:39:34 +01:00
Max Kellermann
394f69bee1
output/Control: allow copy elision (fix -Wpessimizing-move)
2020-11-15 19:55:11 +01:00
Stapper
ba5531f9dd
Fixes #994 - moveoutput: new AudioOutputControl created from copyMoving an output to a partition is now done via MultipleOutputs::AddCopy(),using a new AudioOutputControl constructor. Tags and always_on settings willpersist when moving outputs between partitions.
2020-11-15 19:47:53 +01:00
Max Kellermann
60d19b2380
doc/plugins.rst: add missing list-table declaration
2020-11-11 12:28:15 +01:00
kaliko
004d6a3b66
doc/mpd.1.rst: Update config file documentation.
...
Have similar information about config file in both mpd.1 ans mpd.conf.5
2020-11-10 15:58:34 +01:00
kaliko
3e79e62c17
doc/mpd.conf.5.rst: Update mpd.conf manual
...
Update description with content from user manual [0].
Remove obsolete information regarding "required parameters" and log_level
[0] https://www.musicpd.org/doc/html/user.html#the-configuration-file
2020-11-10 15:58:30 +01:00
kaliko
27b69330f4
doc/mpdconf.example: add database exemples
2020-11-10 15:58:10 +01:00
kaliko
6b50b67339
doc/mpdconf.example: add available log levels
2020-11-10 15:58:03 +01:00
kaliko
51ca775a1c
doc/mpdconf.example: Strip trailing space, fixed typo.
2020-11-10 15:57:54 +01:00
Max Kellermann
1092882f38
decoder/dsdiff: apply padding to odd-sized chunks
...
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1001
2020-11-10 15:55:33 +01:00
Max Kellermann
8a7986c3bf
doc/plugins.rst: add DSD spec links
2020-11-10 15:53:35 +01:00
Max Kellermann
c7bd8c663d
increment version number to 0.22.4
2020-11-06 16:14:23 +01:00
Max Kellermann
f6c65cba58
release v0.22.3
2020-11-06 16:12:54 +01:00
Max Kellermann
f849b07766
storage/curl: fix nullptr dereference
...
Pass a std::string to PathTraitsUTF8::Relative(), implicitly casting
it to std::string_view. This selects the right overload which returns
std::string_view instead of `const char *`; the latter could return
`nullptr` which would cause the implicit conversion of the return
value to std::string_view to crash.
Regression caused by commits ead208987d
and a98d627c0b
.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/995
2020-11-06 15:35:47 +01:00
Max Kellermann
2da3cff1e8
filter/LoadChain: use the AutoConvertFilter
...
This adds support for input samples other than 16 bit to the FFmpeg
filter plugin.
2020-11-04 20:15:19 +01:00
Max Kellermann
0c965d0573
filter/AutoConvert: move the Filter class to TwoFilters.cxx
2020-11-04 20:15:19 +01:00
Max Kellermann
77c14692c9
filter/AutoConvert: eliminate AutoConvertFilter if possible
...
If no conversion is necessary, return the child Filter as-is. This
allows removing all nullptr checks from AutoConvertFilter.
2020-11-04 20:15:19 +01:00
Max Kellermann
226eb26300
filter/ffmpeg: interleave the output AVFrame
...
If the FFmpeg filter outputs planar data, interleave it, just like the
FFmpeg decoder plugin does.
2020-11-04 20:15:19 +01:00
Max Kellermann
2d606fa989
decoder/ffmpeg: move code to lib/ffmpeg/Interleave.cxx
...
To be reused by the FFmpeg filter plugin.
2020-11-04 20:15:19 +01:00