summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-05-19Merge branch 'npu' of git://github.com/neheb/MPDMax Kellermann
2021-05-19Merge branch 'flac-ogg' of git://github.com/jprjr/VGMPDMax Kellermann
2021-05-19Merge branch 'v0.22.x'Max Kellermann
2021-05-19db/proxy: split search into chunks to avoid exceeding the output bufferMax Kellermann
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1130
2021-05-19db/proxy: send "window" as separate parameter to SendConstraints()Max Kellermann
2021-05-19db/proxy: require libmpdclient 2.11 or laterMax Kellermann
Remove lots of #ifdefs.
2021-05-19db/proxy: require MPD 0.20 or laterMax Kellermann
Allows using ranges, always. This is required to fix https://github.com/MusicPlayerDaemon/MPD/issues/1130 without adding more runtime conditionals.
2021-05-18command/PlaylistCommands: pass real_uri to LookupRemoteTag()Max Kellermann
For querying tags, the real song URI should be used, because if the (display) URI is different, requesting it will not produce a usable response. This is a theoretical problem because none of the existing playlist plugins sets the real_uri. This requires changing the URI comparison in playlist::TagModified(). Closes https://github.com/MusicPlayerDaemon/MPD/issues/1154
2021-05-18command/file: cache the last "albumart" fileMax Kellermann
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1156
2021-05-18input/LastInputStream: new classMax Kellermann
2021-05-17Merge branch 'v0.22.x'Max Kellermann
2021-05-17{input,storage}/curl: set CURLOPT_HTTPAUTH=CURLAUTH_BASICMax Kellermann
With the default value CURLAUTH_ANY, libcurl needs to probe for authentication methods first, and only the second request will have an Authorization header. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1155
2021-05-17python/build/libs.py: update CURL to 7.76.1Max Kellermann
2021-05-15flac encoder: enable Ogg FLAC and Ogg chainingJohn Regan
refactors GenerateOggSerial into a generic GenerateSerial utility, under the util lib. libFLAC may be encoded without Ogg support. If Ogg support is disabled, libFLAC will still export Ogg-related methods (like setting a serial number), and throw a runtime error when initializing an Ogg stream. GenerateOggSerial does not depend on libogg. Refactoring it into a generic GenerateSerial prevents having to add build-time checks for libogg within the FLAC encoder plugin.
2021-05-07Add resampling mode setting to modplug decoderGrimReaperFloof
2021-04-26output/jack: enable on WindowsMax Kellermann
This enables the JACK output plugin on Windows, but doesn't link against libjack64.dll, instead loads the DLL at runtime with LoadLibrary(). This kludge avoids the extremely fragile JACK shared memory protocol by using the system's libjack64.dll, without requiring the same DLL at build time.
2021-04-26output/control: add missing nullptr checksMax Kellermann
Fixes crash when pausing the default partition after an output was moved to another partition. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1147
2021-04-20pcm/Volume: drop support for GCC older than 8Max Kellermann
2021-04-20util/BindMethod: drop support for GCC older than 7Max Kellermann
2021-04-15Revert "tag/Pool: use strncmp() without strlen() to compare strings"Max Kellermann
This reverts commit 1532983fb5755305a86fc37d2f35a7757d2bd66f. This optimization was bad because now all strings match if they are a prefix of another string, and this caused collisions in the tag string pool, corrupting the database.
2021-04-06use [[gnu::pure]] instead of gcc_pureMax Kellermann
This is semi-standard and doesn't require the util/Compiler.h header.
2021-04-06util/AllocatedString: add concatenating constructorMax Kellermann
2021-04-06util/AllocatedArray: include cleanupMax Kellermann
2021-04-06net/SocketError: use `constexpr`Max Kellermann
2021-04-06net/SocketError: use `auto`Max Kellermann
2021-04-06net/SocketError: change "const" to "pure"Max Kellermann
2021-04-06util/StringBuffer: make capacity() staticMax Kellermann
This allows using it in constant expressions.
2021-04-06util/DereferenceIterator: simplify operator->()Max Kellermann
This makes it compatible with containers storing std::unique_ptr.
2021-04-06util/DereferenceIterator: fix static_cast in operator->()Max Kellermann
2021-04-06Java/Exception: simplify RethrowException()Max Kellermann
2021-04-06java/File: add non-static GetAbsolutePath() overloadMax Kellermann
2021-04-06java/String: remove unnecessary `env` parameterMax Kellermann
2021-04-06java/String: add `const`Max Kellermann
2021-04-06java/Ref: add nullptr comparisonMax Kellermann
2021-04-06java/Ref: add nullptr constructorMax Kellermann
2021-04-06Java/String: inherit the super class constructorMax Kellermann
2021-04-06Java: no namespace indentMax Kellermann
2021-04-06java/Ref: add move operatorMax Kellermann
2021-04-06java/Ref: remove `const`, add default initialiserMax Kellermann
2021-04-06java/Ref: add nullptr check to destructorMax Kellermann
May allow the compiler to optimize calls away.
2021-03-29lib/curl/Multi: reword API documentationMax Kellermann
2021-03-29lib/curl/Multi: move operator bool() downMax Kellermann
2021-03-29lib/curl/Multi: rename parametersMax Kellermann
2021-03-26Add npupnp supportJean-Francois Dockes
libnpupnp is a C++ modification of libupnp. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-03-24Support new tags in proxy pluginSimon Persson
Add support for the following tags when using the proxy database plugin: WORK CONDUCTOR LABEL GROUPING MUSICBRAINZ_WORKID COMPOSERSORT ENSEMBLE MOVEMENT MOVEMENTNUMBER LOCATION
2021-03-13Merge branch 'v0.22.x'Max Kellermann
2021-03-13gme: add support for rsn filesJohn Regan
Upcoming release of game-music-emu will support it, details here: https://bitbucket.org/mpyne/game-music-emu/pull-requests/23/rsn-support
2021-03-13output/wasapi: use calculated new buffer instead old oneShen-Ta Hsieh
2021-03-10Added cross-origin header to http headers of the http output.bitkeeper
The current http output doesn't provide a header for cross-origin support. This prevents to use the mpd http stream directly from an other webapplication due the origin from the webpage differs from then the audio stream. The fix is to add the following header to the http response: Access-Control-Allow-Origin: *
2021-03-10Add tags relevant to classical music.Simon Persson
This commit adds some tags that are (mostly) interesting for listeners of classical music. Ensemble -------- This is an ensemble that is playing the music, such as Wiener Philharmoniker. The tag can be used to distinguish the ensemble from the conductor, composer, soloist, and ensemble, that are generally all in the "ARTIST" tag. Movement ------- The movement number and movement (name) of this track, i.e. "II" and "Allegro". ComposerSort ------------ Allows us to look for Beethoven's 9th under B, for Beethoven, not L for Ludwig. Location -------- This is the location of the recording, e.g. "Wiener Musikverein".