Commit Graph

5487 Commits

Author SHA1 Message Date
ejurgensen
9805f03d10 [airplay] Update pairing, fix compiler complain about const initialization 2021-01-10 15:29:28 +01:00
ejurgensen
541e022a0e Merge branch 'airplay2_5' 2021-01-10 15:06:10 +01:00
ejurgensen
6b91c92bca [airplay] Remove rs->session, not used any more 2021-01-10 15:05:21 +01:00
ejurgensen
ef0f41dc46 [airplay] Separate naming of AirPlay 1 and 2, incl log domains 2021-01-10 15:05:21 +01:00
ejurgensen
f16dc204b2 [player] Logging fixup 2021-01-10 15:05:21 +01:00
ejurgensen
ffadc399af [cfg] Add option for prefering AirPlay 2 (useful for testing) 2021-01-10 15:05:21 +01:00
ejurgensen
a5bd8b011e [cfg] libplist+libsodium now required, remove configure options
Need the two libraries for AirPlay 2, which can't be optional.

Means iTunes XML and device verification configure options are no longer
useful.
2021-01-10 15:05:21 +01:00
ejurgensen
01360fff99 [airplay] Delete auth_key on probe failure 2021-01-10 15:05:21 +01:00
ejurgensen
9cdd2a9f8b [db] Upgrade schema to 21.05 (change auth_keys in speaker table) 2021-01-10 15:05:21 +01:00
ejurgensen
3ea480d1e7 [player] Use output priority to select between raop/Airplay 1 and Airplay 2 2021-01-10 15:05:21 +01:00
ejurgensen
fac97eed9c [raop] Drop handling of old auth_keys, not necessary with db schema update 2021-01-10 15:05:21 +01:00
ejurgensen
8368ca7686 [airplay] Add support for AirPlay 2
Includes
- Implementation in src/outputs/airplays2, type OUTPUT_TYPE_AIRPLAY
- Homekit pairing, both normal (with PIN) and transient
- New session startup sequence, incl GET /info, SETPEERS and 2 x SETUP
- No more OPTIONS and ANNOUNCE
- Use POST /feedback for keepalive instead of SET_PARAMETERS
- Sequence dispatching instead of callback chains
- Continue despite "Bad request" to SET_PARAMETER (volume)
- Opening of event connection to receiver (reverse rtsp connection)

Still to be done
- Password authentication
- Handling of events
2021-01-10 14:58:06 +01:00
ejurgensen
86f762bb1f [plist_wrap] Add libplist convenience wrapper 2021-01-10 14:52:31 +01:00
ejurgensen
265c1e5836 [cfg] Make libplist required (Airplay 2 requirement) 2021-01-10 14:51:16 +01:00
ejurgensen
3b00900572 [player] Add pkt->header_len in rtp_common 2021-01-10 14:51:16 +01:00
ejurgensen
8b842be17f [evrtsp] Add support for SETPEERS and GET 2021-01-10 14:45:39 +01:00
ejurgensen
4621d25aaa [logger] Add DHEXDUMP() for logging raw data
Substitute for Wireshark when the data exchange is encrypted
2021-01-10 14:45:39 +01:00
Christian Meffert
724cfa0093
Merge pull request #1134 from chme/podcast-updates
[library] Directly notify listeners of db changes after adding new items
2021-01-09 11:21:42 +01:00
Christian Meffert
889a6f4f94
Merge pull request #1157 from ejurgensen/dependabot/npm_and_yarn/web-src/axios-0.21.1
Bump axios from 0.21.0 to 0.21.1 in /web-src
2021-01-09 11:18:03 +01:00
dependabot[bot]
56f539a89b
Bump axios from 0.21.0 to 0.21.1 in /web-src
Bumps [axios](https://github.com/axios/axios) from 0.21.0 to 0.21.1.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v0.21.1/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.0...v0.21.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-05 03:58:11 +00:00
ejurgensen
506959985b [xcode] Treat Apple Music like iTunes (closes #1152) 2020-12-26 12:57:43 +01:00
ejurgensen
14756c0d59 [outputs] Add nickname option for Airplay/Chromecast speakers (issue #1145) 2020-12-15 21:45:58 +01:00
ejurgensen
76cd982201 [rtsp] Shorten evrtsp timeouts, 45-50 sec is too long 2020-12-11 17:12:31 +01:00
ejurgensen
6aaf10914c
Merge pull request #1146 from timgates42/bugfix_typo_volume
docs: fix simple typo, volumne -> volume
2020-12-10 20:45:14 +01:00
Tim Gates
83605cd172
docs: fix simple typo, volumne -> volume
There is a small typo in README_ALSA.md.

Should read `volume` rather than `volumne`.
2020-12-09 22:06:06 +11:00
ejurgensen
1d5691be2f [artwork] Refactor artwork_get() and fix issue #1139
artwork_get() would return error for non-file images that shouldn't be
rescaled, which was a bit weird. This makes artwork_get() more straight-
forward.

Also fix issue #1139 simply by not calling artwork_get() in cases were
queue_item->artwork_url is an old temp file (in source_item_pipe_get).
2020-11-28 21:27:58 +01:00
ejurgensen
d1a1f6c59c [pipe] Log when artwork is written to temp file 2020-11-28 21:27:58 +01:00
whatdoineed2do/Ray
4082f9e215 [library] Add function to delete playlist by id that directly
invalidates the REST API client caches
2020-11-28 08:27:52 +01:00
Christian Meffert
234a4f5b4b
Merge pull request #1136 from johnappletree/patch-1
Update PageBrowseRecentlyAdded.vue
2020-11-28 06:51:49 +01:00
johnappletree
96c9424575
Update PageBrowseRecentlyAdded.vue
Remove the last 8 weeks as this in my case resulted in an empty list. Furthermore, increase limit to get more entries in the list.
2020-11-24 21:46:56 +01:00
ejurgensen
b72fda76c8
Merge pull request #1135 from uvjustin/check-utf8-icy-metadata
Check utf-8 in metadata_packet_get
2020-11-24 10:16:35 +01:00
Justin Wong
0f5393633a Check utf-8 in metadata_packet_get 2020-11-23 23:31:00 +08:00
Christian Meffert
9bcbeb1f1a
Merge pull request #1120 from chme/mpd
MPD fixes
2020-11-22 11:41:17 +01:00
chme
59bac6b068 [mpd] Add missing OK response line, if multiple commands are sent
without beeing wrapped in a command list
2020-11-22 11:33:40 +01:00
chme
ccaa7967bf [mpd] Fix nextsong/nextsongid in status cmd response 2020-11-22 11:33:40 +01:00
Christian Meffert
17e7df84fb
Merge pull request #1133 from chme/web_next
[web] Fix switching to Spotify search with empty query
2020-11-22 11:19:10 +01:00
Christian Meffert
c155a5c533
Merge pull request #1129 from chme/remove-admin-html
Remove (legacy) admin web interface
2020-11-22 11:15:49 +01:00
chme
3fbe16ac1b [library] Directly notify listeners of db changes after adding new items 2020-11-22 11:09:31 +01:00
chme
2d9e0528e1 [docs] Update INSTALL.md - remove reference to admin.html 2020-11-22 10:27:10 +01:00
chme
95b798f44f [htdocs] Delete legacy admin web interface (all functionality is
implemented in the player web interface settings)
2020-11-22 10:27:10 +01:00
chme
13e8103962 [httpd/spotify] Remove redirect to legacy admin.html page 2020-11-22 10:27:10 +01:00
chme
09009f8d77 [htdocs] Rebuild v0.8.3 2020-11-22 10:19:15 +01:00
chme
075d8d1c22 [web-src] Update to v0.8.3 2020-11-22 10:19:00 +01:00
chme
b7369afc50 [web-src] Fix switching to Spotify search with empty query 2020-11-22 10:17:37 +01:00
Christian Meffert
b8a66a92cf
Merge pull request #1130 from chme/codeql
[gh-actions] Add codeql config file to exclude compiled js, html, css
2020-11-22 09:58:18 +01:00
ejurgensen
b6a686866a [xcode] Retry with default probe size if quick probe fails (issue #1126) 2020-11-21 20:40:30 +01:00
ejurgensen
04fa902b01 [xcode] Change open_input() to return ffmpeg error 2020-11-21 20:40:30 +01:00
ejurgensen
eea3a3bd27 [xcode] Fix memleak on open input error 2020-11-21 20:40:30 +01:00
ejurgensen
a0830727dd
Merge pull request #1131 from whatdoineed2do/rss-playlistitems-deletion-fix
[rss] defer playlistitems purge til ready to update with new rss
2020-11-21 20:31:38 +01:00
whatdoineed2do/Ray
2e69f5dac6 [rss] defer playlistitems purge til ready to update with new rss
Current impl fetches pl, purge pl items, fetch RSS, inserts entries.  If the RSS
fetch fails (remote server is temporary unreachable) the playlistitems for that
RSS are all dropped.

This has a side effect that RSS playlists cannot be determined from tracks (see
issue #1126) and thus cannot be deleted.

Simple fix to defer playlist item purge to the point that the RSS fetch is ok
and before the inserts
2020-11-21 14:01:39 +00:00