Marcel van der Veldt [Thu, 28 Jul 2022 14:18:58 +0000 (16:18 +0200)]
prevent redundant player_queue updated events
Marcel van der Veldt [Thu, 28 Jul 2022 07:29:50 +0000 (09:29 +0200)]
guard code for ItemMapping instead of album
Marcel van der Veldt [Wed, 27 Jul 2022 20:31:18 +0000 (22:31 +0200)]
yet another crossfade buffer fix
Marcel van der Veldt [Wed, 27 Jul 2022 18:40:32 +0000 (20:40 +0200)]
1.7.3
Marcel van der Veldt [Wed, 27 Jul 2022 18:28:22 +0000 (20:28 +0200)]
fix missing is_group_leader
Marcel van der Veldt [Wed, 27 Jul 2022 18:23:16 +0000 (20:23 +0200)]
fix typo
Marcel van der Veldt [Wed, 27 Jul 2022 18:00:12 +0000 (20:00 +0200)]
cleanup
Marcel van der Veldt [Wed, 27 Jul 2022 17:02:53 +0000 (19:02 +0200)]
force max 8 seconds of buffer for YT music
Marcel van der Veldt [Wed, 27 Jul 2022 17:00:09 +0000 (19:00 +0200)]
prevent duplicate player queue update event
Marcel van der Veldt [Wed, 27 Jul 2022 16:47:46 +0000 (18:47 +0200)]
cleanup
Marcel van der Veldt [Wed, 27 Jul 2022 15:53:42 +0000 (17:53 +0200)]
simplify media changed events a bit
only send media_item added/changed event after all actions are done
Marcel van der Veldt [Wed, 27 Jul 2022 15:25:39 +0000 (17:25 +0200)]
Fix announce feature (#441)
* Fix announce feature
Marcel van der Veldt [Wed, 27 Jul 2022 13:38:19 +0000 (15:38 +0200)]
Various small fixes and enhancements (#440)
* fix edge case where playlist track has invalid albumdetails
* make the audio buffer more dynamic
* fix loop thread safety (fixes issues with cast speakers)
* simplify some code
* simplify player poll task
* extend timeout for spotify token retrieval
* Fix count of PagedItems queries
* Fix relative paths in playlists
* Handle some edge cases in cleanup procedure
* Fix metadata checksum overwrite
* Fix type of mediaitem image
* additional guards for library edit usage
* Fix local artwork retrieval in artist/album folders
* Handle (and log) slow Spotify connection
Marcel van der Veldt [Mon, 25 Jul 2022 19:48:23 +0000 (21:48 +0200)]
1.7.2
Marcel van der Veldt [Mon, 25 Jul 2022 19:47:52 +0000 (21:47 +0200)]
Fix several issues in Browse feature (#439)
- fix sort order of items in browse
- fix parsing item that has not (yet_ been added to the db
- fix relative file paths within playlist
Marcel van der Veldt [Mon, 25 Jul 2022 19:43:36 +0000 (21:43 +0200)]
fix test gh workflow
dependabot[bot] [Mon, 25 Jul 2022 17:46:01 +0000 (19:46 +0200)]
Bump mypy from 0.961 to 0.971 (#435)
Bumps [mypy](https://github.com/python/mypy) from 0.961 to 0.971.
- [Release notes](https://github.com/python/mypy/releases)
- [Commits](https://github.com/python/mypy/compare/v0.961...v0.971)
---
updated-dependencies:
- dependency-name: mypy
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] [Mon, 25 Jul 2022 17:45:53 +0000 (19:45 +0200)]
Bump pytest-sugar from 0.9.4 to 0.9.5 (#436)
Bumps [pytest-sugar](https://github.com/Teemu/pytest-sugar) from 0.9.4 to 0.9.5.
- [Release notes](https://github.com/Teemu/pytest-sugar/releases)
- [Changelog](https://github.com/Teemu/pytest-sugar/blob/master/CHANGES.rst)
- [Commits](https://github.com/Teemu/pytest-sugar/commits)
---
updated-dependencies:
- dependency-name: pytest-sugar
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] [Mon, 25 Jul 2022 17:45:42 +0000 (19:45 +0200)]
Bump pytest-aiohttp from 0.3.0 to 1.0.4 (#437)
Bumps [pytest-aiohttp](https://github.com/aio-libs/pytest-aiohttp) from 0.3.0 to 1.0.4.
- [Release notes](https://github.com/aio-libs/pytest-aiohttp/releases)
- [Changelog](https://github.com/aio-libs/pytest-aiohttp/blob/master/CHANGES.rst)
- [Commits](https://github.com/aio-libs/pytest-aiohttp/compare/v0.3.0...v1.0.4)
---
updated-dependencies:
- dependency-name: pytest-aiohttp
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Marcel van der Veldt [Mon, 25 Jul 2022 17:44:58 +0000 (19:44 +0200)]
Fix unsollicited (re)starts of queue playback (#438)
* Fix unsollicited (re)starts of queue playback
Marcel van der Veldt [Mon, 25 Jul 2022 12:04:55 +0000 (14:04 +0200)]
Better handling of missing or malformed ID3 tags (#434)
* Better handling of missing or malformed ID3 tags
* Add tests for parser logic
* Enforce Various Artists name to be consistent
Marcel van der Veldt [Sat, 23 Jul 2022 00:56:31 +0000 (02:56 +0200)]
1.7.1
Marcel van der Veldt [Sat, 23 Jul 2022 00:49:23 +0000 (02:49 +0200)]
add album artists filter
Marcel van der Veldt [Sat, 23 Jul 2022 00:16:17 +0000 (02:16 +0200)]
fix typo
Marcel van der Veldt [Fri, 22 Jul 2022 23:58:47 +0000 (01:58 +0200)]
include artists column when searching tracks or albums
Marcel van der Veldt [Fri, 22 Jul 2022 23:58:14 +0000 (01:58 +0200)]
convert float to int first
Marcel van der Veldt [Fri, 22 Jul 2022 23:25:52 +0000 (01:25 +0200)]
1.7.0
Marcel van der Veldt [Fri, 22 Jul 2022 23:24:46 +0000 (01:24 +0200)]
round durations to int
Marcel van der Veldt [Fri, 22 Jul 2022 23:20:12 +0000 (01:20 +0200)]
auto create collage image for playlists
Marcel van der Veldt [Fri, 22 Jul 2022 23:15:50 +0000 (01:15 +0200)]
a few fixes for search
Marcel van der Veldt [Fri, 22 Jul 2022 17:45:52 +0000 (19:45 +0200)]
fix repeat all
Marcel van der Veldt [Fri, 22 Jul 2022 17:38:15 +0000 (19:38 +0200)]
fix name in browse listings
Marcel van der Veldt [Fri, 22 Jul 2022 14:44:38 +0000 (16:44 +0200)]
fix race condition while playing announcements
Marcel van der Veldt [Fri, 22 Jul 2022 14:32:19 +0000 (16:32 +0200)]
return full provider item in versions
Marcel van der Veldt [Fri, 22 Jul 2022 10:35:25 +0000 (12:35 +0200)]
add previous player url to snapshot state
allows resuming from previous state
Marcel van der Veldt [Fri, 22 Jul 2022 10:06:46 +0000 (12:06 +0200)]
1.6.9
Marcel van der Veldt [Fri, 22 Jul 2022 10:06:28 +0000 (12:06 +0200)]
A few small usability fixes (#433)
* make the album/track versions lookup a bit more strict
* ignore MediaNotFoundError when recursively deleting items from the db
* small typo
* Fix: refresh overwrites info of local files
* prefer local filesystem at lookups
* allow overwrite of local metadata when filesystem
* Allow resume for non-MA sources
Allow resume after announce or pause even if the previous playing media was not initiated by MA
* fix race condition
Marcel van der Veldt [Thu, 21 Jul 2022 23:57:00 +0000 (01:57 +0200)]
1.6.8
Marcel van der Veldt [Thu, 21 Jul 2022 23:56:39 +0000 (01:56 +0200)]
A few small fixes (#432)
* fix artist splitter
do not split artist on &
* fix repeat
* fix add to queue when shuffle is enabled
* typos
Marcel van der Veldt [Thu, 21 Jul 2022 23:31:28 +0000 (01:31 +0200)]
Buffer optimizations (#431)
* make icy metadata controllable
* to not buffer ahead (and skip crossfade) if the player does not have any buffer
* enlarge buffer
Marcel van der Veldt [Thu, 21 Jul 2022 22:04:38 +0000 (00:04 +0200)]
Fix version listings for albums and tracks (#430)
dependabot[bot] [Thu, 21 Jul 2022 22:00:35 +0000 (00:00 +0200)]
Bump pylint from 2.14.4 to 2.14.5 (#426)
Bumps [pylint](https://github.com/PyCQA/pylint) from 2.14.4 to 2.14.5.
- [Release notes](https://github.com/PyCQA/pylint/releases)
- [Commits](https://github.com/PyCQA/pylint/compare/v2.14.4...v2.14.5)
---
updated-dependencies:
- dependency-name: pylint
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
github-actions[bot] [Thu, 21 Jul 2022 14:03:50 +0000 (16:03 +0200)]
Auto-update pre-commit hooks (#428)
Co-authored-by: marcelveldt <marcelveldt@users.noreply.github.com>
Marcel van der Veldt [Thu, 21 Jul 2022 08:42:03 +0000 (10:42 +0200)]
Fix missing provider id(s) error when updating items in the database (#429)
Marcel van der Veldt [Thu, 21 Jul 2022 00:02:43 +0000 (02:02 +0200)]
1.6.7
Marcel van der Veldt [Thu, 21 Jul 2022 00:01:55 +0000 (02:01 +0200)]
Various small fixes (#427)
* fix playback reporting on qobuz
* fix playlist create
* fix browse feature check
* add additional event type for finished background job
* small change to item linking logic
* avoid db duplicates with a simple lock
* guard search not supported by provider
* attach full album to albumtracks
* add db delete func
* add (back) events when media items update
* speedup add/remove to/from library
* update playlist when tracks added/removed
* fix playlists create/edit
* change playlist item removals to positions
* fix for album tracks listings
* prefer album image
* apply recursive delete
* fix browse feature
Marvin Schenkel [Sat, 16 Jul 2022 10:01:54 +0000 (12:01 +0200)]
Youtube Music: Add library add/remove and playlist track add/remove functionality (#425)
* Add library add/remove functions
* Add library add/remove functions
* Add lib add/remove album, playlist and artist
* Add playlist track add/remove
* Add auth for private playlists
* Fix playlist track remove
Marcel van der Veldt [Sat, 16 Jul 2022 06:53:13 +0000 (08:53 +0200)]
Create playlist implementation (#424)
* Implement playlist_create on filesystem provider
* some cleanup/fixes from previous changes
Marcel van der Veldt [Fri, 15 Jul 2022 21:10:53 +0000 (23:10 +0200)]
Add capabilities attributes/properties for MusicProviders (#423)
* Add capability attributes to MusicProvider model
* implement on existing providers
Co-authored-by: Marvin Schenkel <marvinschenkel@gmail.com>
Marcel van der Veldt [Fri, 15 Jul 2022 17:18:08 +0000 (19:18 +0200)]
Add method to clear all items from the cache (#422)
Marvin Schenkel [Fri, 15 Jul 2022 14:12:50 +0000 (16:12 +0200)]
Add support for brand accounts (#421)
Marvin Schenkel [Fri, 15 Jul 2022 10:06:01 +0000 (12:06 +0200)]
1.6.6 (#420)
1.6.6
Marcel van der Veldt [Fri, 15 Jul 2022 09:20:26 +0000 (11:20 +0200)]
Fix deleted files logic (#419)
- fix typo of path
- remove redundant code
Marvin Schenkel [Fri, 15 Jul 2022 08:46:16 +0000 (10:46 +0200)]
Fix playlist checksum (#418)
* Fix playlist checksum
* Improve code readability
* Update music_assistant/music_providers/ytmusic/helpers.py
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
* Update music_assistant/music_providers/ytmusic/helpers.py
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Marcel van der Veldt [Thu, 14 Jul 2022 22:34:40 +0000 (00:34 +0200)]
Merge branch 'master' of https://github.com/music-assistant/music-assistant-lib
Marcel van der Veldt [Thu, 14 Jul 2022 22:01:30 +0000 (00:01 +0200)]
1.6.5
Marcel van der Veldt [Thu, 14 Jul 2022 22:01:10 +0000 (00:01 +0200)]
Small fixes (#417)
* no cover image for local HA files
* optimize image thumbs
* Fix audio preview
* contentFeatures DLNA header
Marcel van der Veldt [Thu, 14 Jul 2022 21:40:15 +0000 (23:40 +0200)]
optimize image thumbs
Marcel van der Veldt [Thu, 14 Jul 2022 21:37:48 +0000 (23:37 +0200)]
no cover image for local HA files
Marcel van der Veldt [Thu, 14 Jul 2022 21:29:00 +0000 (23:29 +0200)]
Fix for radio streams with playlist url (#416)
* Handle radio stream playlists
* playlist parsing for tunein and url provider
Marcel van der Veldt [Thu, 14 Jul 2022 19:38:28 +0000 (21:38 +0200)]
lower loglevels of metadata providers
Marcel van der Veldt [Thu, 14 Jul 2022 19:16:09 +0000 (21:16 +0200)]
Various fixes for filesystem provider (#415)
fix coverart on tracks
if ID3 tags are changed by user, force overwrite of info in db
optimize file deletions
fix musicbrainz albumartistid parse from id3 tags
make platlist parsing more robust
require track duration
Marcel van der Veldt [Thu, 14 Jul 2022 10:50:07 +0000 (12:50 +0200)]
Set checksum on YTM playlist (#414)
set checksum on playlist so the contents can be refreshed
Marvin Schenkel [Thu, 14 Jul 2022 10:00:43 +0000 (12:00 +0200)]
Improve Youtube Music (#413)
* Cache signature timestamp and cipher
* Fix album sometimes not loading
* Add expires to streamdetails, log loudness
* Add audio channels and sample rate to streamdetails
Marcel van der Veldt [Wed, 13 Jul 2022 23:57:55 +0000 (01:57 +0200)]
1.6.4
Marcel van der Veldt [Wed, 13 Jul 2022 23:57:36 +0000 (01:57 +0200)]
Adjust buffer for youtube music (#412)
* Decrease the buffer a bit to better support Youtube Music
which throttles the music stream so we can't buffer too far ahead
* allow more buffer for next tracks
Marcel van der Veldt [Wed, 13 Jul 2022 23:21:55 +0000 (01:21 +0200)]
Use direct stream whenever possible to minimize overhead (#411)
Use direct stream in ffmpeg if supported by source
Minimize overhead by allowing ffmpeg to consume the file/url directly.
Marcel van der Veldt [Wed, 13 Jul 2022 21:37:48 +0000 (23:37 +0200)]
Only allow ICY metadata on mp3 streamtype (#410)
* Only allow ICY metadata on mp3 streamtype
- Use default metaint of 8192 bytes
Marcel van der Veldt [Wed, 13 Jul 2022 14:39:38 +0000 (16:39 +0200)]
Merge branch 'master' of https://github.com/music-assistant/music-assistant-lib
Marcel van der Veldt [Wed, 13 Jul 2022 14:39:26 +0000 (16:39 +0200)]
some typos and comments
Marcel van der Veldt [Tue, 12 Jul 2022 21:18:25 +0000 (23:18 +0200)]
1.6.3
Marcel van der Veldt [Tue, 12 Jul 2022 21:08:27 +0000 (23:08 +0200)]
Make Announce feature more robust (#409)
* Rename alert to announce (use same naming as HA)
* Make the Announce/alert feature more robust
- recover from unexpected conditions
- fix fade-in
- use silence stream to detect end of playback
- handle edge cases (discovered so far)
* prevent queue command while announcement busy
* create setting for announce volume
* fix wrong loudness for url provider
dependabot[bot] [Tue, 12 Jul 2022 20:24:44 +0000 (22:24 +0200)]
Bump actions/setup-python from 4.0.0 to 4.1.0 (#406)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4.0.0...v4.1.0)
---
updated-dependencies:
- dependency-name: actions/setup-python
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] [Tue, 12 Jul 2022 20:24:32 +0000 (22:24 +0200)]
Bump pre-commit from 2.19.0 to 2.20.0 (#407)
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 2.19.0 to 2.20.0.
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v2.19.0...v2.20.0)
---
updated-dependencies:
- dependency-name: pre-commit
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Marcel van der Veldt [Mon, 11 Jul 2022 19:30:50 +0000 (21:30 +0200)]
Extend support for plain URL's (#408)
Make the URL Music provider a first class citizen.
- Grab metadata if a plain url (or file) is passed to play_media
- Determine if URL is a Track or Radio stream
- Allow URL's in local playlists
Marcel van der Veldt [Sun, 10 Jul 2022 21:11:22 +0000 (23:11 +0200)]
Allow more aggressive buffering by players that require it (#405)
Allow more agressive buffering
For example cast players (especially with Hires audio) want to buffer ahead, allow this without breaking the scenario where the audio source itself is throttled (streaming providers like YT Music)
Marvin Schenkel [Sat, 9 Jul 2022 19:39:53 +0000 (21:39 +0200)]
Youtube Music: Fix streaming of non secured URLs (#404)
* Fix streaming of non secured URLs
* Fix missing duration for artist top tracks
Marvin Schenkel [Sat, 9 Jul 2022 17:08:25 +0000 (19:08 +0200)]
Merge branch 'master' into master
Marcel van der Veldt [Sat, 9 Jul 2022 08:45:28 +0000 (10:45 +0200)]
Youtube Music: Fix artist missing on compilation albums (#403)
Fix artist missing on compilation albums
Marcel van der Veldt [Fri, 8 Jul 2022 23:57:07 +0000 (01:57 +0200)]
1.6.2
Marcel van der Veldt [Fri, 8 Jul 2022 23:56:11 +0000 (01:56 +0200)]
Merge branch 'master' of https://github.com/music-assistant/music-assistant-lib
Marcel van der Veldt [Fri, 8 Jul 2022 23:55:53 +0000 (01:55 +0200)]
small fix
Marvin Schenkel [Fri, 8 Jul 2022 23:47:39 +0000 (01:47 +0200)]
Improve Youtube Music provider (#402)
* Add new YTM parser
* Fix get_track
* Fix parsing bugs
* Fix artist albums without artist
* Increase limit for people with a music addiction :-)
* Update music_assistant/music_providers/ytmusic/ytmusic.py
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
* Only return highest quality thumb
* Fix missing artist in album search results
* Add duration to album tracks
* ignore albumartists without id
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Marcel van der Veldt [Fri, 8 Jul 2022 23:29:45 +0000 (01:29 +0200)]
ignore albumartists without id
Marvin Schenkel [Fri, 8 Jul 2022 21:56:11 +0000 (23:56 +0200)]
Add duration to album tracks
Marvin Schenkel [Fri, 8 Jul 2022 21:50:23 +0000 (23:50 +0200)]
Fix missing artist in album search results
Marvin Schenkel [Fri, 8 Jul 2022 21:25:54 +0000 (23:25 +0200)]
Merge branch 'master' of https://github.com/MarvinSchenkel/music-assistant-lib
Marvin Schenkel [Fri, 8 Jul 2022 21:23:29 +0000 (23:23 +0200)]
Only return highest quality thumb
Marvin Schenkel [Fri, 8 Jul 2022 21:07:18 +0000 (23:07 +0200)]
Update music_assistant/music_providers/ytmusic/ytmusic.py
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Marvin Schenkel [Fri, 8 Jul 2022 20:05:00 +0000 (22:05 +0200)]
Increase limit for people with a music addiction :-)
Marvin Schenkel [Fri, 8 Jul 2022 20:02:54 +0000 (22:02 +0200)]
Merge branch 'master' of https://github.com/MarvinSchenkel/music-assistant-lib
Marvin Schenkel [Fri, 8 Jul 2022 20:02:21 +0000 (22:02 +0200)]
Fix artist albums without artist
Marvin Schenkel [Fri, 8 Jul 2022 18:51:41 +0000 (20:51 +0200)]
Merge branch 'music-assistant:master' into master
Marvin Schenkel [Fri, 8 Jul 2022 18:50:26 +0000 (20:50 +0200)]
Fix parsing bugs
Marvin Schenkel [Fri, 8 Jul 2022 17:06:29 +0000 (19:06 +0200)]
Fix get_track
Marcel van der Veldt [Fri, 8 Jul 2022 16:50:11 +0000 (18:50 +0200)]
1.6.1
Marvin Schenkel [Fri, 8 Jul 2022 15:07:57 +0000 (17:07 +0200)]
Add new YTM parser
Marcel van der Veldt [Fri, 8 Jul 2022 13:09:08 +0000 (15:09 +0200)]
Skip system directories (like recycle) in the filesystem scan (#401)
Marcel van der Veldt [Fri, 8 Jul 2022 09:24:24 +0000 (11:24 +0200)]
remove useless print
Marcel van der Veldt [Fri, 8 Jul 2022 09:19:01 +0000 (11:19 +0200)]
Fix order of database initialization (#400)