Skip to content

Commit

Permalink
1.7.0
Browse files Browse the repository at this point in the history
  • Loading branch information
philippe44 committed Jan 15, 2024
1 parent f4c5a14 commit f61b6f1
Show file tree
Hide file tree
Showing 8 changed files with 15 additions and 16 deletions.
Binary file renamed AirConnect-1.6.3.zip → AirConnect-1.7.0.zip
Binary file not shown.
4 changes: 4 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
1.7.0
- allow icy on every codec, just provide interval, let user config and requesting player decide
- (airupnp) only re-acquire state on play action completion. This is not needed on stop/pause and will create issues like fake stops

1.6.3
- (airupnp) on error, reset counter to 0 if player responds

Expand Down
2 changes: 1 addition & 1 deletion aircast/src/aircast.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
#include "raop_server.h"
#include "cast_util.h"

#define VERSION "v1.6.3"" ("__DATE__" @ "__TIME__")"
#define VERSION "v1.7.0"" ("__DATE__" @ "__TIME__")"

/*----------------------------------------------------------------------------*/
/* typedefs */
Expand Down
17 changes: 6 additions & 11 deletions airupnp/src/airupnp.c
Original file line number Diff line number Diff line change
Expand Up @@ -488,17 +488,12 @@ int ActionHandler(Upnp_EventType EventType, const void *Event, void *Cookie) {
p->StartCookie = p->WaitCookie;
_ProcessQueue(p);

/*
when certain waited action has been completed, the state need
to be re-acquired because a 'stop' state might be missed when
(eg) repositionning where two consecutive status update will
give 'playing', the 'stop' in the middle being unseen
*/
if (Resp && (!strcasecmp(Resp, "StopResponse") ||
!strcasecmp(Resp, "PlayResponse") ||
!strcasecmp(Resp, "PauseResponse"))) {
p->State = UNKNOWN;
}
/* when play action has been completed, the state need to be re-acquired because we
* might have missed a state in-between. For example, while seeking there is a very
* stop/play so the STOPPED state will be missed and the PLAYING event will be as
* well. This should not be done for stop/pause actions otherwise we might create a fake STOPPED event state and think
* we stopped when in fact it's just the re-acquisition of current state */
if (Resp && !strcasecmp(Resp, "PlayResponse") && p->State == PLAYING) p->State = UNKNOWN;

break;
}
Expand Down
2 changes: 1 addition & 1 deletion airupnp/src/airupnp.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
#include "cross_util.h"
#include "metadata.h"

#define VERSION "v1.6.3"" ("__DATE__" @ "__TIME__")"
#define VERSION "v1.7.0"" ("__DATE__" @ "__TIME__")"

/*----------------------------------------------------------------------------*/
/* typedefs */
Expand Down
2 changes: 1 addition & 1 deletion airupnp/src/avt_util.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* UPnP control util
* UPnP Control util
*
* (c) Philippe, [email protected]
*
Expand Down

0 comments on commit f61b6f1

Please sign in to comment.