ejurgensen
c96dc1fcff
[dacp] Fix support for device-volume (speaker volume buttons)
...
Closes #613
2021-05-26 23:20:40 +02:00
ejurgensen
5de0533232
[airplay] Add mdns txt for Sonos Symfonisk
2021-05-21 18:50:28 +02:00
ejurgensen
5f1686695a
[-] Name update forked-daapd -> owntone throughout the code
2021-04-24 23:54:20 +02:00
luusl
8a1f85a14e
Fixed potential crash on pulseaudio sink info callback, when an error
...
occurs.
2021-04-12 13:11:47 +02:00
ejurgensen
c7faefe1f8
[docs] Change git links: owntone/forked-daapd -> owntone/owntone-server
2021-04-01 22:09:26 +02:00
ejurgensen
64d6b0d4c3
[raop] Fix scan-build make warning after removing switch in commit 98dad07
2021-04-01 01:21:11 +02:00
ejurgensen
ed6176062a
[airplay] Logging adjustments
2021-03-31 23:55:25 +02:00
ejurgensen
e5fcfc6574
[cast] Use net_connect() instead of own cast_connect()
2021-03-31 23:55:25 +02:00
ejurgensen
98dad07b7f
[airplay] Convert services to dual stack, plus use net_connect() and net_bind()
2021-03-31 23:55:25 +02:00
ejurgensen
f3febb63d9
[raop] Convert services to dual stack, plus use net_bind() and net_connect()
2021-03-31 23:55:25 +02:00
ejurgensen
dd0f0ece78
[mdns] Remove ipv4/ipv6 argument to mdns_browse
...
Make sure mdns_browse() always works the same, and follows user config.
2021-03-31 23:55:25 +02:00
ejurgensen
daa0652e7b
[docs] Rename repo: ejurgensen -> owntone
2021-03-30 23:39:07 +02:00
ejurgensen
bbe7526414
[airplay] Update pairing modules (pair_ap 0.2)
2021-03-07 23:02:14 +01:00
ejurgensen
036100eecd
[cast] Length check of protobuf messages just to be safe
2021-02-17 22:45:45 +01:00
ejurgensen
ac6d87656a
[airplay] Change recommended airplay2-receiver repo
2021-01-29 20:30:22 +01:00
ejurgensen
275d66b6ad
[airplay] Use compressed ALAC to save bandwidth
...
Uses ffmpeg to compress ALAC. Before each audio packet was always 1411 bytes,
now they are half or even much less if it is just silence.
2021-01-18 00:19:34 +01:00
ejurgensen
f105958a64
[airplay] Fix so that AirPlay 2 devices are removed
2021-01-18 00:19:34 +01:00
ejurgensen
60b096c707
[airplay] Make auth-setup easier to test via a define switch
2021-01-14 22:53:09 +01:00
ejurgensen
8b9e064af9
[raop] Lower log level
2021-01-14 22:46:20 +01:00
ejurgensen
b2b91998d9
[airplay] Fix decryption of large responses
...
If the response is large evrtsp will not read the entire message from the
socket. This change allows for decryption and parsing of partial messages.
2021-01-14 21:36:47 +01:00
ejurgensen
73c5dcec5a
[airplay] Update pairing, change ciphering function return values
2021-01-14 21:29:22 +01:00
ejurgensen
754f69bb10
[airplay] Change logging for devices that don't have AirPlay 2 features field
...
Closes #1167 re announcement from Kodi
2021-01-12 17:59:43 +01:00
ejurgensen
74f4b2c8b2
[airplay] Fixup
2021-01-12 17:56:47 +01:00
ejurgensen
8f48179365
[airplay] Small update to pairing modules
2021-01-10 23:33:19 +01:00
ejurgensen
1546a43585
[airplay] Disable extended logging
2021-01-10 23:32:34 +01:00
ejurgensen
4e122303a1
[conf] Add speaker level option to disable AirPlay 1
2021-01-10 16:42:08 +01:00
ejurgensen
9805f03d10
[airplay] Update pairing, fix compiler complain about const initialization
2021-01-10 15:29:28 +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
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
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
3b00900572
[player] Add pkt->header_len in rtp_common
2021-01-10 14:51:16 +01:00
ejurgensen
14756c0d59
[outputs] Add nickname option for Airplay/Chromecast speakers (issue #1145 )
2020-12-15 21:45:58 +01:00
ejurgensen
695927de2a
[artwork] Remove old artwork_get_xxx in favor of new which has a format arg
2020-11-18 23:23:05 +01:00
ejurgensen
a9e6497be2
[cast] Increase packet buffer
2020-11-18 23:13:00 +01:00
ejurgensen
572c15a04d
[cast] Remove some unused MEDIA_xxx commands
2020-11-18 23:13:00 +01:00
ejurgensen
bb8719718a
[cast] Rename state enums, don't use MEDIA any more
2020-11-18 23:13:00 +01:00
ejurgensen
d5f5e312ab
[cast] Add config option for max_volume, like for Airplay
2020-11-18 23:13:00 +01:00
ejurgensen
c21266d26f
[cast] Use RTCP ACKs/nACKs from device to control how packets are sent
...
Previously we just sent packets when ready, which especially during startup
meant a largish number of packets got sent rapidly. This seemed to cause audio
glitches. With this change the rate is adapted to follow ACKs from the device,
which is more in line with Chromium's way, though still far from the same.
Also added capability to resend packets when a nACK is received.
Also some wip attempts at sending coverart as VP8 video.
2020-11-18 23:13:00 +01:00
ejurgensen
dff64e3dd0
[raop] Remove endian includes, now included via rtp_common.h
2020-11-18 23:13:00 +01:00
ejurgensen
06d1d7273d
[player] Add a basic RTCP parser for Chromecast packets
...
Also put the endian includes in the header, both raop.c and cast.c will need
them.
2020-11-18 23:13:00 +01:00
ejurgensen
5929938a18
[outputs] RTP: Distinguish clearly between payload type and marker bit
...
Also make quality an optional input to rtp_session_new(), since it isn't
required internally by the RTP module.
2020-11-18 23:13:00 +01:00
ejurgensen
a11ab808b2
[cast] Make fake announcement of video stream ( fixes #1092 )
...
For unknown reasons some Chromecast devices disconnect causing a TLS error if
we don't OFFER a video stream. Seems actually sending video isn't required to
fix the issue.
2020-11-18 23:13:00 +01:00
ejurgensen
ad4b886a11
[cast] Make GET_CAPABILITIES request in debug mode
...
Note that not all devices support this request
2020-11-18 23:13:00 +01:00
ejurgensen
92953f1a2c
[cast] Use unsigned ints for ID's so we don't risk negative values
...
ssrc_id could become negative because rtp_session.ssrc_id is uint32, but we
were printing it with %d.
2020-11-18 23:13:00 +01:00