forked from philippe44/AirConnect
-
Notifications
You must be signed in to change notification settings - Fork 1
/
CHANGELOG
144 lines (108 loc) · 4.38 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
0.2.1.1
- Some controlers like AirParrot do not send encrypted audio
0.2.1.0
- add static <artwork> parameter
- 32 bits comparaison correction
- (aircast) do not set playing state on "buffering" event
0.2.0.8
- add aarch64
0.2.0.7
- loglimit was not used in airupnp
0.2.0.6
- kd_dump was writing in a NULL string when no header was received
0.2.0.5
- alac.c compiles depends on endianness
- Some players (Roon) send a FLUSH after a TEARDOWN which caused access to a NULL hairtunes context
- When changing track, the previous HTTP socket was used to send new track, causing miss of flac header & track beginning yielding to very long CC start
0.2.0.4
- (airupnp) backporting of squeeze2upnp modifications
- Add TCP_NODELAY to HTTP socket
0.2.0.3
- race condition & double free when stopping device (credit @codepeon)
- http parsing error caused memory leak (headers not released)
- cosmetic changes
- (airupnp) backport squeeze2upnp modification (AVTSetURI)
- (airupnp) subscription complete failure could lead to access NULL pointer
0.2.0.2
- On keep-alive UPnP result, always move to next item if device found in list (even if removed as a Sonos slave)
- only use SEARCH_RESULT and not ADVERTISEMENT_ALIVE for keep-alive
0.2.0.1
- (airupnp) search for master should return true in case of UPnP error
- (aircast) mDNS search for groups was messed-up
0.2.0.0
- new handling of discovery (mDNS-SD and UPnP) for on-the-fly player addition / removal (no more discovery time and removal counts)
- Review of all mutex-related issue and various risk of unprotected code
- review of memory leaks (only the SSL remains, which is the same all over execution)
- mDNS records is now 120s (per RFQ) and not 75m so that in case of crash, player do not appear sticky for some applications
- add possibility to dump players ('dump' & 'dumpall' commmands)
- in SETUP response, cport and tport are set to 0 by default which will cause session to fail if none of these are provided
- handle "header folding" in HTTP response
- HTTP headers w/o : should not crash kbd_free
- use closesocket under Windows, not close!
- (aircast) SSL context is not deleted at every disconnect to avoid memory leaks
- (aircast) wrong volume local change when mute was set
0.1.6.1
- add Solaris i86pc build
- change some mdns options
0.1.5.3
- compile flag to store streams
0.1.5.2
- FreeBSD does not exit accept() even when socket shutdown properly, need to use select()
0.1.5.1
- memory leak correction in isMatsre & GetGroupVolume (@codepeon)
0.1.5.0
- add "+" after default name to identify AirConnect players
0.1.4.4
- always remove players on BYEBYE message
0.1.4.3
- (airupnp) default name is zone name for Sonos device
0.1.4.2
- (airupnp) properly eliminate Sonos slaves
0.1.4.1
- misc Sonos group cleaning
0.1.4.0
- (airupnp) detect Sonos groups and do not add slaves
- (airupnp) add Sonos groups volume
0.1.3.2
- discovery and exit (-i) could abort without searching on aircast
- new devices were not added to existing file when using -I
0.1.3.1
- when cannot start, exit with no-zero code
0.1.3.0
- title changed to "Streaming from AirConnect"
- code cleaning
0.1.2.0
- send minimum metadata
- (aircast) remove unused config items
0.1.1.0
- support wav and pcm codecs
0.1.0.5
- rare race condition in UPnP search timeout/result
0.1.0.4
- flac_ready boolean was un-necessary
- wait for playing (RTP) before sending silent frames
- was sending a few raw frames at the beginning when using flac
- functions renaming for better consistency
0.1.0.3
- pthread_join of remote search could be called twice
- update renderer thread cleaned for better exit
- memory leaks correction
0.1.0.2
- code cleaning
- exclusion (-m) parsing was wrong and ";" is not a valid separator
0.1.0.0
- HTTP delay uses silence frames
0.0.2.7
- do not hold RTP frames when they are available! only hold missing one, up to RTP latency
- add HTTP delay for Chromecast as well
0.0.2.6
- NULL (empty xml item) was causing crash and default save set <latency> to empty
0.0.2.5
- <name> in config file was not taken into account
0.0.2.4
- only notify of playback when frame is not silence (all 0) to avoid iOS 10.x spurious play
- add wav header so that wav can be used in AirCast as well
0.0.2.3
- increase SO_SNDBUF to try to better handle sloppy networks
0.0.2.2
- high CPU usage in http frames handling