Commit Graph
432 Commits
Author SHA1 Message Date
Mike Brady 0fe21f3a56 Quieten a few debug messages. 2021-09-29 09:31:13 +01:00
Mike Brady af6511007e Allow Shairport Sync to be build without including the metadata stuff. 2021-09-29 09:02:53 +01:00
Mike Brady 4a82745561 Allocate, deallocate and NULL the rtp_event_thread memory space so that it is only deleted once! 2021-09-18 12:22:57 +01:00
Mike Brady 02734e58c2 Merge with the aillwee development branch 2021-09-16 17:54:47 +01:00
Mike Brady e06be8c916 Allow compilation with AirPlay2 not selected. 2021-09-12 15:31:45 +01:00
Mike Brady 1438216878 Add full teardown actions to RTSP stream cleanup to correctly close all connections. 2021-09-12 15:24:48 +01:00
Mike Brady 2e123cf39a Fix compilation errors that accumulated with no --with-airplay-2 flag set. 2021-09-09 11:24:23 +01:00
Mike Brady 9f9513f2e3 Fix a crashing bug in cancel_all_RTSP_threads. 2021-09-07 07:44:28 +01:00
Mike Brady 7def758f13 Clang 2021-09-06 14:30:13 +01:00
Mike Brady 8049f1e60b Improve cancelled connection memory recovery. Remove some trick-bicycling programming from connection memory recovery. Use mutexes. Recover cancelled connection memory immediately. 2021-09-06 11:05:20 +01:00
Mike Brady 1fc00e13e9 Seems to work better with iOS / HomePod mini speaker selection. Does not recover discarded rtsp stream memory! 2021-09-06 09:11:24 +01:00
Mike Brady dd795d9157 To address Issue 1107, set the number of items to buffer to 255. Thanks to https://github.com/PieGuy314 and https://github.com/Hello71 for reporting. 2021-09-05 10:12:41 +01:00
Mike Brady ae1c4f1d29 redo handle_setup to identify ptp, ntp and remote control streams, returns 400 for remote control and unrecognised stuff. 2021-09-04 15:08:44 +01:00
Mike Brady 078b708087 Uncomment code to list the contents of an incoming message. Get the source airplay version. Quieten some messages. 2021-09-03 15:41:47 +01:00
Mike Brady b24380d34b Move the release of the group UUID to when the connection ends, not when the play session ends. 2021-09-02 12:20:53 +01:00
Mike Brady 6ebc251791 quieten a few debug messages 2021-09-01 16:54:19 +01:00
Mike Brady 650077bc83 Tiny update. Note thay SPS can not participate in a remote control connection. 2021-09-01 12:08:13 +01:00
Mike Brady 7c4308ce3a Move groupUUID storage to the conn, as it's a property of a connection not of the player. Improve some debug messages. Alsways update the bonjour strings dueing a SETUP, only reset grooup UUID when a TEARDOWN closes a connection, not when it closes a stream. 2021-09-01 10:33:29 +01:00
Mike Brady 620d6fae60 Rearrange code for setting bonjour strings. Improve response text from msg_write_response. Decode updateMRSupportedCommands stuff for curiosity. Capture group ID and groupContainsGroupLeader from setup and post them in the Bonjour strings. Include 'isGroupLeader=0' if it's in a group. Restore group ID and related stuff when deselected. Set bit 11 'DeviceSupportsRelay' when selected and clear when deselected. 2021-08-31 17:54:59 +01:00
Mike Brady d2dc03d07c break out the POST /command stuff 2021-08-23 13:00:09 +01:00
Mike Brady 90740694ba When an unrecognised SETUP message is received, just say okay and ignore it. Remove reduncant client_setup_plist from the conn data structure. 2021-07-28 12:58:20 +01:00
Mike Brady 4090b2d8fb Avoid repreatedly asking Avahi to monitor for the same DACP-ID. Quieten some debug messages. 2021-07-22 13:23:57 +01:00
Mike Brady 707204e7e8 Quieten a few temporary wanrings. 2021-07-22 12:43:21 +01:00
Mike Brady a85a9ac0e4 Add a dummy handler for the POST /feedback request. 2021-07-22 11:03:32 +01:00
Mike Brady 4e6f1e5e65 Pick up active Remote information as well as DACP-ID. 2021-07-19 21:51:47 +01:00
Mike Brady 9748297737 Pick up the DACP-ID for AP2 streams. Move the mdns txt string globals around a bit. 2021-07-19 17:13:27 +01:00
Mike Brady 4c9d1f7904 Make mDNS txt record arrays global and permanent. We hope to be able to modify them dynamically later. 2021-07-19 12:07:14 +01:00
Mike Brady 3a6297bc9a Honour max_output_db setting even when ignore_volume_control is true. Spell out "Shairport Sync" in the Home app information. 2021-07-16 15:04:51 +01:00
ejurgensen 1a64a56c3f Add Homekit pairing methods (pair-add/list/remove + configure)
Also change the features flag to match airplay2-receiver
2021-07-15 23:23:08 +02:00
Mike Brady a07ece496e Quieten a few more debug messages. 2021-07-14 09:23:50 +01:00
Mike Brady 58b8513ccd Spell out "Shairport Sync" explicitly so that it appears in the info in the Home app. Quieten a debug message. 2021-07-14 08:58:43 +01:00
ejurgensen e4901d6be2 Add Homekit pairing methods (pair-add/list/remove + configure)
Also change the features flag to match airplay2-receiver
2021-07-13 23:43:57 +02:00
Mike Brady c37ee4542d Add code to skip packets of buffered audio that are late or too early. 2021-06-09 19:35:08 +01:00
Mike Brady 93aefbd8ea get the activity monitor working for the different types of stream 2021-06-06 15:50:05 +01:00
Mike Brady 13eccc3039 Quieten a debug message. 2021-06-03 09:52:05 +01:00
Mike Brady c5dafbd28b Remember the original anchor information so that if the master clock become equal to it in the future, it can be restored to those exact numbers and eliminate any intervening approximations. Add some diagnostics. 2021-06-01 14:51:17 +01:00
Mike Brady d4ea91aa65 Rough and hacky but works with the bit depth of the output DAC to automatically choose the correct AAC decoding sample size. Allocation of rotating buffers is fixed and profligate. 2021-06-01 08:56:47 +01:00
Mike Brady 1464c4ed04 Restore ability to compile without AIRPLAY-2 flag (duh). Begin to split player_play into player_prepare and player_play. 2021-05-31 17:12:20 +01:00
Mike Brady a109b587ec Flush seems to be working properly and reliably. Some audio glitches removed too by dropping the first two AAC blocks of any passage. Crude. Flush diagnostic linked list stuff left in place. 2021-05-30 11:17:06 +01:00
Mike Brady 2ea28c0661 Much better flushing. Delayed flushing only works for one delay. Noice artifacts removed when skipping. Pretty solid. 2021-05-29 21:24:33 +01:00
Mike Brady 7c68f97d7f flaky but some interesting stuff 2021-05-29 15:59:11 +01:00
Mike Brady 9cf4ef032d Improving the flush behaviour. 2021-05-29 10:54:44 +01:00
Mike Brady 2986b282d3 Does pretty well with flushing. Sometimes misses a flush on a repeat one. 2021-05-28 22:20:11 +01:00
Mike Brady e258cca33a recognise two types of flush -- one with from and until information, the other with just until information. A flush with "with" information is not followed by a new set anchor, whereas a flush without the " with" information is alwasy followed by a new setanchor. 2021-05-28 19:16:37 +01:00
Mike Brady 26ce13d511 a slightly more rational clock handling regime, I hope. Wait for 400 ms when a clock becomes master. Wait five seconds when you get a new master clock. 2021-05-26 16:48:25 +01:00
Mike Brady e1034e1131 Advertise the _raop._tcp service as well as the _airplay._tcp service. Use a real MAC as the basis for the device ID. 2021-05-24 12:07:05 +01:00
Mike Brady 77e70e497f tighten up on the availability of a clock before feeding audio into the player. 2021-05-16 13:02:19 +01:00
Mike Brady c645a03946 handle volume control requests in AP2 correctly. Don't reset timing peer lists when buffered audio is paused. 2021-05-15 12:18:37 +01:00
Mike Brady 4a0849b942 Fix a compilation bug and quieten a debug message. 2021-05-12 11:00:09 +01:00
Mike Brady e8e81a8b07 fix a couple of compilation errors. 2021-05-12 10:57:50 +01:00