Commit Graph

5345 Commits

Author SHA1 Message Date
ejurgensen e570cbdcbd [player] Use input progress metadata to update clients
Before, we were ignoring progress metadata, and we were also updating clients
and db too early with input metadata (right when read from the input, instead of
waiting until playback (speakers) were at that position.

This change adds a complicated async chain of events from when the update is
received.
2020-05-12 20:16:15 +02:00
ejurgensen 68022d5c10 [dacp] Change update id's more often
Sometimes the artwork changes, but the album does not (especially likely if we
are in a row of "Unknown album"-tracks)
2020-05-11 21:39:02 +02:00
ejurgensen 63ab446bd5 [pipe] Fix issue where Shairport progress metadata was ignored
Sometimes the progress has a negative position, which we were incorrectly
disregarding.
2020-05-11 21:39:02 +02:00
ejurgensen 1921a2401f [artwork] Fix memleak in source_item_pipe_get
Queue item not being freed on succes
2020-05-11 21:37:29 +02:00
ejurgensen 97a2165666 [lastfm] Fix forgotten include in commit de1b1c3
Closes #1001
2020-05-11 19:19:28 +02:00
ejurgensen a6cb70fd66 [artwork] Don't use group handlers if unknown group (artist/album) 2020-05-11 17:24:05 +02:00
ejurgensen de1b1c3805 [cfg] Remove hardcoding of strings for unknown album etc
Now configurable, since we don't have real localisation
2020-05-11 17:02:14 +02:00
ejurgensen 8d4f99ebf9
[docs] Add README note about ipv6 and some Airplay speakers
Ref. issue #993
2020-05-11 16:25:13 +02:00
whatdoineed2do/Ray 3008088b85 [web-src] use browser locale for 'time' filter for display 2020-05-11 13:45:52 +01:00
ejurgensen 077a642930
Merge pull request #994 from whatdoineed2do/smartpl-support-random
[SMARTPL] add 'random' in 'order by' clause
2020-05-09 22:59:29 +02:00
whatdoineed2do/Ray 69c56f5971 [jsonapi] items/add?expression can take 'limit' param 2020-05-09 20:04:27 +01:00
whatdoineed2do/Ray c5fe0d217b [jsonapi] support 'limit' on 'api/queue/items/add?expression='
Extend to support SMART query allows 'limit'

  curl -X POST "http://localhost:3689/api/queue/items/add?expression=genre+is+%22Pop%22+order+by+time_added+desc+limit+3"
2020-05-09 17:09:03 +01:00
whatdoineed2do/Ray 4147e302a8 [SMARTPL] add 'random' in 'order by' clause
'random' tag in 'order by' clause to request SQLite to random select data rows from result set

    "random 3 pop" {
      genre is "Pop" and
      media_kind is music
      order by random desc
      limit 3
    }
2020-05-09 15:47:30 +01:00
ejurgensen 86d49a7028 [artwork] Don't log Spotify artwork errors if user is not logged in
Ref issue #986
2020-05-05 16:23:55 +02:00
ejurgensen 07158cf2d5 [raop] Fix incorrect log domains 2020-05-05 16:06:06 +02:00
ejurgensen b10434627a [player] Remove outdated comment 2020-05-05 16:04:39 +02:00
Christian Meffert 77165d834c
Merge pull request #980 from chme/web_next
Player web interface fixes
2020-05-04 20:09:10 +02:00
ejurgensen 945aefaaa5 Merge branch 'speaker_selection1' 2020-05-04 17:49:07 +02:00
ejurgensen 778d6f4999 [config] Change speaker_autoselect default to no
The changes in commit 6612899 mean that we now do more to maintain selection of
a user selected speaker, even if it fails or is powered off for a while. Thus
this option is no longer relevant.

The option was also never very good for people with many speakers.
2020-05-04 17:41:57 +02:00
ejurgensen b6dfb48100 [raop] Adjust keep alive interval 30s -> 25s
Testing with Homepod/ATV points at 25s working better, see:
https://github.com/ejurgensen/forked-daapd/issues/734#issuecomment-622959334
2020-05-03 23:15:44 +02:00
chme e7a48dccc5 [htdocs] Rebuild player web interface v0.7.1 2020-05-03 07:12:55 +02:00
chme cea0bf09d0 [web-src] Add cast icon for chromcast outputs 2020-05-03 07:12:54 +02:00
chme 691fff20bf [web-src] Add spacing in touch top menu to fix scrolling issue in iOS 2020-05-03 07:12:54 +02:00
chme 341acca184 [web-src] Allow the dev server to run against a remote forked-daapd instance 2020-05-03 07:12:54 +02:00
ejurgensen 57ff2e3124 [raop] Fix bug where we send start packets during teardown
The teardown send function was setting state to CONNECTED, which made
raop_write() believe that the device had just joined.
2020-05-03 00:00:26 +02:00
ejurgensen 661289990c [player] Migrate a lot of speaker handling to outputs.c
Moves speaker selection, volume handling and startup to outputs.c, plus adds
the ability to "resurrect" a speaker that disconnects.

The purpose of moving the code is to concentrate device handling in one place.

Also changes how we deal with speaker selection. The player will now generally
not alter a user selection, even if the device fails. The purpose of this is to
maintain selection both if the device briefly fails, and if the user switches
off the device (we stop playback) and later turns it on + starts new playback.
2020-05-03 00:00:18 +02:00
chme 4188a54e37 [web-src] Fix missing scrollbars in navbar menus 2020-05-02 08:15:03 +02:00
ejurgensen d0738aabae Merge branch 'artwork_mediakind1' 2020-05-02 00:53:53 +02:00
ejurgensen 0e19102efd [artwork] Define MEDIA_KIND_ALL as USHRT_MAX instead of individual num values 2020-05-02 00:52:52 +02:00
ejurgensen 37b4188c3c [artwork] Generalize handler configuration of supported media_kinds 2020-05-02 00:52:52 +02:00
ejurgensen 9d1f15d3c2 [db] Define MEDIA_KIND_ALL 2020-05-02 00:52:52 +02:00
chme c8a5826e0b [web-src] Only show Spotify as artwork source if user is logged in 2020-05-01 10:21:20 +02:00
chme f4539cac20 [web-src] Fix wrong sizing of cover artwork on iOS 2020-05-01 10:21:20 +02:00
whatdoineed2do/Ray 329c0620fc [artwork] query playlist-wide artwork if availble 2020-04-30 20:28:36 +02:00
whatdoineed2do/Ray 5a872dc436 [library] rss pulls channel->image->url if available 2020-04-30 20:28:36 +02:00
whatdoineed2do/Ray e7c62086a2 [db] add artwork_url to playlist_info 2020-04-30 20:28:36 +02:00
whatdoineed2do/Ray 9a0c7e9ad2 [db] v21.4 - add playlist..artwork_url column 2020-04-30 20:28:36 +02:00
ejurgensen d84ea2008f [pipe] Increase metadata pipe max read size + don't abort if exceeded
Closes #976
2020-04-29 23:02:05 +02:00
ejurgensen a14a8458aa [scan] Remove iTunes_CDDB_IDs as album ID (closes #972)
Seems this ID is not reliable, it can be semi-empty, e.g. with a value of '16++'
2020-04-29 20:57:13 +02:00
ejurgensen 489b90e067 [rsp] Add comments with RSP sample requests 2020-04-29 20:55:46 +02:00
ejurgensen 827d7c5d41
Merge pull request #975 from whatdoineed2do/smartpl-song_length
[smartpl] support song_length
2020-04-29 20:49:10 +02:00
whatdoineed2do/Ray 52800b419a [smartpl] support song_length 2020-04-29 11:53:29 +01:00
ejurgensen 6d9cf5c1d7 [rsp] Fix commit 24e3ac1 so it filters properly (ref issue #944) 2020-04-28 22:27:36 +02:00
ejurgensen 66154ae014 [-] Change restart limits in SystemD service file (closes #968)
Allow for more manual restarting, but still have a limit to protect against
infinite restart.
2020-04-28 21:47:02 +02:00
ejurgensen d3fb451960 [player] Save seek position more often
Makes it possible for the user to resume playback from the correct position if
for instance the speaker disconnects -> pb_abort is called.
2020-04-27 21:29:51 +02:00
ejurgensen 153eb40b6d [db] Remove some definitions of ARTWORK_XXX
The artwork db field should only be used to save media file artwork metadata,
which mostly means whether it has embedded artwork or not. It should not be
used to save where we found artwork for the file, since that is not static.

So this commit removes for instance ARTWORK_OWN, ARTWORK_DIR etc., which we
weren't using anyway.
2020-04-25 22:07:10 +02:00
ejurgensen daf3922650 [artwork] Remove http instance of artwork_source for embedded
Commit 8510f7e should mean that it is not required any more, since we won't be
probing http streams unless we know they have artwork.
2020-04-25 21:59:18 +02:00
chme 8510f7e5f2 [artwork] Only try embedded artwork if dbmfi has ARTWORK_EMBEDDED flag 2020-04-25 21:58:21 +02:00
ejurgensen 946853fdf4 [rss] Change feed virtual_path
Instead of /file:/https:/domain.podcast set it to /https://domain.podcast.com/xxxx
2020-04-25 21:51:00 +02:00
Christian Meffert d300ed2a40
Merge pull request #917 from chme/web_next
Update player web interface (v0.7.0)
2020-04-25 07:42:33 +02:00