Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-08-06 | release v0.22.10v0.22.10 | Max Kellermann | |
2021-08-06 | mixer/alsa: use cached values to work around rounding errors | Max Kellermann | |
This replaces 967af603270246f1c97e11b8bad6a0eb65c81318 with a more effective workaround. Closes https://github.com/MusicPlayerDaemon/MPD/issues/822 | |||
2021-08-06 | mixer/alsa: skip the snd_mixer_handle_events() call in ↵ | Max Kellermann | |
alsa_mixer_elem_callback() snd_mixer_handle_events() has already been called by DispatchSockets(). This way, we can also skip the exception handler. | |||
2021-08-06 | mixer/alsa: move alsa_mixer_elem_callback() into the AlsaMixer class | Max Kellermann | |
2021-08-06 | mixer/alsa: move code to GetPercentVolume() | Max Kellermann | |
2021-08-06 | mixer/alsa: move code to NormalizedToPercent() | Max Kellermann | |
2021-08-06 | mixer/alsa: move code to GetNormalizedVolume() | Max Kellermann | |
2021-08-06 | build/openssl: pass --cross-compile-prefix to ./Configure | Max Kellermann | |
2021-08-06 | build/openssl: pass RANLIB=... to "make install" | Max Kellermann | |
The "install_dev" target runs ranlib during installation, and this can break the Android build. | |||
2021-08-06 | python/build/libs.py: update OpenSSL to 3.0.0-beta2 | Max Kellermann | |
2021-08-06 | python/build/libs.py: update CURL to 7.78.0 | Max Kellermann | |
2021-08-06 | doc/plugins.rst: move filter graph URL to ffmpeg.org | Max Kellermann | |
2021-08-05 | db/simple: prune CUE entries from database for non-existent songs | Max Kellermann | |
Closes https://github.com/MusicPlayerDaemon/MPD/issues/1019 | |||
2021-08-05 | db/update/Playlist: prepend "../" only for relative URIs | Max Kellermann | |
Prepending "../" to absolute URIs would break them. | |||
2021-08-05 | fs/Traits: add PathTraitsUTF8::IsAbsoluteOrHasScheme() | Max Kellermann | |
2021-08-05 | db/simple/Directory: remove obsolete API doc | Max Kellermann | |
2021-08-05 | decoder/Bridge: call UpdateStreamTag() only if there is no pending seek | Max Kellermann | |
If UpdateStreamTag() gets called while an initial seek is pending, the result will never be submitted to a MusicChunk. By avoiding the UpdateStreamTag() call in that case (by moving UpdateStreamTag() to after the PrepareInitialSeek() check), the song_tag is preserved until UpdateStreamTag() is called again from SubmitData(). This fixes missing tags in the "httpd" output. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1137 | |||
2021-08-05 | output/oss: always enable PcmExport for alsa_channel_order | Max Kellermann | |
We need this even when AFMT_S24_PACKED is not available, for the correct channel order in multi-channel files. Internally, MPD uses FLAC channel order, but OSS uses the same channel order as ALSA. | |||
2021-08-05 | tag/Builder: do not acquire tag_pool_lock if TagItem list is empty | Max Kellermann | |
2021-08-05 | tag/Builder: use std::swap() in move operator | Max Kellermann | |
This way, we save the overhead for acquiring the tag_pool_lock. | |||
2021-08-05 | tag/Builder: don't ignore the result of tag_pool_dup_item | Cebtenzzre | |
Also, use RemoveAll() instead of directly clearing TagBuilder::items in most cases, as its elements represent references that must be released. Closes #1023 | |||
2021-08-05 | tag/Builder: another missing RemoveAll() call | Cebtenzzre | |
2021-08-05 | tag/Builder: use RemoveAll() to give up references | Cebtenzzre | |
2021-08-05 | tag/Pool: add [[nodiscard]] | Cebtenzzre | |
2021-08-05 | input/tidal: remove defunct unmaintained plugin | Max Kellermann | |
This plugin has been defunct for several years. Tidal has not ever replied to any of my emails, so they're apparently not interested in MPD support. | |||
2021-08-02 | input/icy: adjust offset at end of stream in Read() | Max Kellermann | |
ProxyInputStream::Read() assigns the `offset` field, which is the wrong offset because it does not consider Icy metadata removed from the stream. Therefore, after every ProxyInputStream::Read() call, IcyInputStream::Read() needs to override this offset. This was missing at the end of the stream, when Read()==0. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1216 | |||
2021-07-30 | db/simple/ExportedSong: check src.OwnsTag(), not this->OwnsTag() | Max Kellermann | |
this->OwnsTag() accesses fields that are not yet initialized. | |||
2021-07-16 | command/file: support "albumart" for virtual tracks in CUE sheets | Max Kellermann | |
Instead of checking for "cover.jpg" in the virtual directory representing the CUE sheet, check its enclosing directory. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1206 | |||
2021-07-16 | command/file: pass directory uri to read_stream_art() | Max Kellermann | |
2021-07-16 | fs/Traits: add overload GetParent(string_view) | Max Kellermann | |
2021-07-16 | output/winmm: fix struct/class mismatch | Max Kellermann | |
2021-07-16 | increment version number to 0.22.10 | Max Kellermann | |
2021-06-24 | doc/user.rst: rectify admin permission | Naglis Jonaitis | |
Updating the database no longer requires the `admin` permission, only `control` is needed (changed in 2abad0f479). See also: #1124 | |||
2021-06-23 | release v0.22.9v0.22.9 | Max Kellermann | |
2021-06-23 | Fix android build error when confronted with package versions ending in ↵ | Yetangitu | |
+revision_information The script seems to assume package version numbers always end in numeric versions with an optional alpha-suffix. Alas, were it only so simple... Sometimes the package is called fizzbang-1.2.3+release_info in which case the build fails. No more! Closes https://github.com/MusicPlayerDaemon/MPD/issues/1177 | |||
2021-06-23 | TagAny: invoke ScanGenericTags() on remote files | Max Kellermann | |
This fixes reading ID3 tags on remote files with the commands "readcomments" and "readpicture". Closes https://github.com/MusicPlayerDaemon/MPD/issues/1180 | |||
2021-06-23 | doc/plugins.rst: mention default libsamplerate type | Naglis Jonaitis | |
2021-06-23 | doc/user.rst: document restore_paused | Naglis Jonaitis | |
2021-06-23 | doc, README.md: update IRC server name/URL | Naglis Jonaitis | |
2021-06-22 | Main: use AtScopeExit() to call ZeroconfDeinit() | Max Kellermann | |
Make sure that ZeroconfDeinit() gets called even if startup fails with an exception. Fixes an assertion failure because an Avahi TimerEvent is still active. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1192 | |||
2021-05-31 | Android: use startForegroundService() in Android 8+ | Max Kellermann | |
Fixes the error: IllegalStateException: Not allowed to start service Intent { cmp=org.musicpd/.Main (has extras) }: app is in background | |||
2021-05-31 | decoder/ffmpeg: fix build failure with FFmpeg 3.4 | Max Kellermann | |
av_demuxer_iterate() was added in libavformat 58.9.100. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1178 | |||
2021-05-31 | decoder/ffmpeg: suppress -Wunused with libavformat<58.6.100 | Max Kellermann | |
2021-05-31 | db/proxy: suppress -Wunused with libmpdclient<2.12 | Max Kellermann | |
2021-05-27 | input/last: call Close() in Open() | Max Kellermann | |
Prevents a possible bug which occurs when the caller-provided open() function throws; then the "uri" field is never set. | |||
2021-05-27 | input/last: clear "uri" field in Close() | Max Kellermann | |
Prevent false negative after the stream was closed automatically after 20 seconds. | |||
2021-05-26 | NEWS: mention new FFmpeg/ID3v2 tags | Max Kellermann | |
2021-05-26 | decoder/ffmpeg: support the tags "album-sort", "artist-sort" | Max Kellermann | |
2021-05-26 | decoder/ffmpeg: support the "sort_album" tag | Max Kellermann | |
From libavformat/mov.c. Closes https://github.com/MusicPlayerDaemon/MPD/issues/1173 | |||
2021-05-26 | decoder/ffmpeg: add comment | Max Kellermann | |