diff --git a/.gitignore b/.gitignore index f8e80e98..da58949b 100644 --- a/.gitignore +++ b/.gitignore @@ -106,3 +106,5 @@ application - 1.x/ __recovery/ *.user *.pdb + +application/bin diff --git a/CHANGELOG b/CHANGELOG index 7d412eef..a542328e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,6 @@ +2.2.8 + - json_pack with "so" does not require object's ref to be decremented + 2.2.7 - in opus & vorbis direct decode mode, don't end before DISCONNECT and streambuf empty - fix sync loop (build-up issue) in vorbis & opus direct decode diff --git a/application/bin/squeeze2cast-freebsd-x86_64 b/application/bin/squeeze2cast-freebsd-x86_64 index b1cb9fdf..ed167c8d 100644 Binary files a/application/bin/squeeze2cast-freebsd-x86_64 and b/application/bin/squeeze2cast-freebsd-x86_64 differ diff --git a/application/bin/squeeze2cast-freebsd-x86_64-static b/application/bin/squeeze2cast-freebsd-x86_64-static index 232cd90d..de0c20d4 100644 Binary files a/application/bin/squeeze2cast-freebsd-x86_64-static and b/application/bin/squeeze2cast-freebsd-x86_64-static differ diff --git a/application/bin/squeeze2cast-linux-aarch64 b/application/bin/squeeze2cast-linux-aarch64 index 2d3eafbd..0a626d9a 100644 Binary files a/application/bin/squeeze2cast-linux-aarch64 and b/application/bin/squeeze2cast-linux-aarch64 differ diff --git a/application/bin/squeeze2cast-linux-aarch64-static b/application/bin/squeeze2cast-linux-aarch64-static index fcdafc29..23c1299c 100644 Binary files a/application/bin/squeeze2cast-linux-aarch64-static and b/application/bin/squeeze2cast-linux-aarch64-static differ diff --git a/application/bin/squeeze2cast-linux-arm b/application/bin/squeeze2cast-linux-arm index 32d18674..004dc76b 100644 Binary files a/application/bin/squeeze2cast-linux-arm and b/application/bin/squeeze2cast-linux-arm differ diff --git a/application/bin/squeeze2cast-linux-arm-static b/application/bin/squeeze2cast-linux-arm-static index 32f14d83..da2e2866 100644 Binary files a/application/bin/squeeze2cast-linux-arm-static and b/application/bin/squeeze2cast-linux-arm-static differ diff --git a/application/bin/squeeze2cast-linux-armv5 b/application/bin/squeeze2cast-linux-armv5 index abbebd03..70cd2a6e 100644 Binary files a/application/bin/squeeze2cast-linux-armv5 and b/application/bin/squeeze2cast-linux-armv5 differ diff --git a/application/bin/squeeze2cast-linux-armv5-static b/application/bin/squeeze2cast-linux-armv5-static index a7925282..a1378e32 100644 Binary files a/application/bin/squeeze2cast-linux-armv5-static and b/application/bin/squeeze2cast-linux-armv5-static differ diff --git a/application/bin/squeeze2cast-linux-armv6 b/application/bin/squeeze2cast-linux-armv6 index 42b4fc67..983db3c9 100644 Binary files a/application/bin/squeeze2cast-linux-armv6 and b/application/bin/squeeze2cast-linux-armv6 differ diff --git a/application/bin/squeeze2cast-linux-armv6-static b/application/bin/squeeze2cast-linux-armv6-static index 3b234672..9a3ec687 100644 Binary files a/application/bin/squeeze2cast-linux-armv6-static and b/application/bin/squeeze2cast-linux-armv6-static differ diff --git a/application/bin/squeeze2cast-linux-mips b/application/bin/squeeze2cast-linux-mips index 26ea1eea..d03742b9 100644 Binary files a/application/bin/squeeze2cast-linux-mips and b/application/bin/squeeze2cast-linux-mips differ diff --git a/application/bin/squeeze2cast-linux-mips-static b/application/bin/squeeze2cast-linux-mips-static index a21cc07d..ae9570bb 100644 Binary files a/application/bin/squeeze2cast-linux-mips-static and b/application/bin/squeeze2cast-linux-mips-static differ diff --git a/application/bin/squeeze2cast-linux-powerpc b/application/bin/squeeze2cast-linux-powerpc index 54ca15b5..442033ad 100644 Binary files a/application/bin/squeeze2cast-linux-powerpc and b/application/bin/squeeze2cast-linux-powerpc differ diff --git a/application/bin/squeeze2cast-linux-powerpc-static b/application/bin/squeeze2cast-linux-powerpc-static index ab22ad0f..f8f864c9 100644 Binary files a/application/bin/squeeze2cast-linux-powerpc-static and b/application/bin/squeeze2cast-linux-powerpc-static differ diff --git a/application/bin/squeeze2cast-linux-sparc64 b/application/bin/squeeze2cast-linux-sparc64 index da58fa4b..7b6e7527 100644 Binary files a/application/bin/squeeze2cast-linux-sparc64 and b/application/bin/squeeze2cast-linux-sparc64 differ diff --git a/application/bin/squeeze2cast-linux-sparc64-static b/application/bin/squeeze2cast-linux-sparc64-static index 2cb8a6a7..1c707275 100644 Binary files a/application/bin/squeeze2cast-linux-sparc64-static and b/application/bin/squeeze2cast-linux-sparc64-static differ diff --git a/application/bin/squeeze2cast-linux-x86 b/application/bin/squeeze2cast-linux-x86 index 3f981b27..0d17f80c 100644 Binary files a/application/bin/squeeze2cast-linux-x86 and b/application/bin/squeeze2cast-linux-x86 differ diff --git a/application/bin/squeeze2cast-linux-x86-static b/application/bin/squeeze2cast-linux-x86-static index b01b48f6..d0c2c0fb 100644 Binary files a/application/bin/squeeze2cast-linux-x86-static and b/application/bin/squeeze2cast-linux-x86-static differ diff --git a/application/bin/squeeze2cast-linux-x86_64 b/application/bin/squeeze2cast-linux-x86_64 index e3aa1df9..585e0308 100644 Binary files a/application/bin/squeeze2cast-linux-x86_64 and b/application/bin/squeeze2cast-linux-x86_64 differ diff --git a/application/bin/squeeze2cast-linux-x86_64-static b/application/bin/squeeze2cast-linux-x86_64-static index 5a2127b7..5670f3c4 100644 Binary files a/application/bin/squeeze2cast-linux-x86_64-static and b/application/bin/squeeze2cast-linux-x86_64-static differ diff --git a/application/bin/squeeze2cast-macos b/application/bin/squeeze2cast-macos index f0e85e06..c64d3761 100644 Binary files a/application/bin/squeeze2cast-macos and b/application/bin/squeeze2cast-macos differ diff --git a/application/bin/squeeze2cast-macos-arm64 b/application/bin/squeeze2cast-macos-arm64 index 6ff70140..9e91c3d6 100644 Binary files a/application/bin/squeeze2cast-macos-arm64 and b/application/bin/squeeze2cast-macos-arm64 differ diff --git a/application/bin/squeeze2cast-macos-arm64-static b/application/bin/squeeze2cast-macos-arm64-static index cbe8346a..b7ab6211 100644 Binary files a/application/bin/squeeze2cast-macos-arm64-static and b/application/bin/squeeze2cast-macos-arm64-static differ diff --git a/application/bin/squeeze2cast-macos-static b/application/bin/squeeze2cast-macos-static index e41e9409..6af7f9fd 100644 Binary files a/application/bin/squeeze2cast-macos-static and b/application/bin/squeeze2cast-macos-static differ diff --git a/application/bin/squeeze2cast-macos-x86_64 b/application/bin/squeeze2cast-macos-x86_64 index a136e642..aa867365 100644 Binary files a/application/bin/squeeze2cast-macos-x86_64 and b/application/bin/squeeze2cast-macos-x86_64 differ diff --git a/application/bin/squeeze2cast-macos-x86_64-static b/application/bin/squeeze2cast-macos-x86_64-static index 996611a6..1ae3b681 100644 Binary files a/application/bin/squeeze2cast-macos-x86_64-static and b/application/bin/squeeze2cast-macos-x86_64-static differ diff --git a/application/bin/squeeze2cast-solaris-x86_64 b/application/bin/squeeze2cast-solaris-x86_64 index 9f736eb1..a1da1711 100644 Binary files a/application/bin/squeeze2cast-solaris-x86_64 and b/application/bin/squeeze2cast-solaris-x86_64 differ diff --git a/application/bin/squeeze2cast-solaris-x86_64-static b/application/bin/squeeze2cast-solaris-x86_64-static index b5f13962..4e595a61 100644 Binary files a/application/bin/squeeze2cast-solaris-x86_64-static and b/application/bin/squeeze2cast-solaris-x86_64-static differ diff --git a/application/bin/squeeze2cast-static.exe b/application/bin/squeeze2cast-static.exe index 8c3be170..bdbd93ec 100644 Binary files a/application/bin/squeeze2cast-static.exe and b/application/bin/squeeze2cast-static.exe differ diff --git a/application/bin/squeeze2cast-static.pdb b/application/bin/squeeze2cast-static.pdb index d16feb29..f3c0593b 100644 Binary files a/application/bin/squeeze2cast-static.pdb and b/application/bin/squeeze2cast-static.pdb differ diff --git a/application/bin/squeeze2cast.exe b/application/bin/squeeze2cast.exe index c41471d1..d8d08f9f 100644 Binary files a/application/bin/squeeze2cast.exe and b/application/bin/squeeze2cast.exe differ diff --git a/application/crosstools b/application/crosstools index 359cb08e..65a2e813 160000 --- a/application/crosstools +++ b/application/crosstools @@ -1 +1 @@ -Subproject commit 359cb08e1a591dc7efd0b964d7393b37c7162818 +Subproject commit 65a2e8132ee0e71ef6f091f93ddd8e64d395a31e diff --git a/application/squeeze2cast/cast_util.c b/application/squeeze2cast/cast_util.c index 10902a2c..8212cfae 100644 --- a/application/squeeze2cast/cast_util.c +++ b/application/squeeze2cast/cast_util.c @@ -242,7 +242,6 @@ void CastPlay(struct sCastCtx* Ctx, struct metadata_s* MetaData) { json_decref(item); char* str = json_dumps(msg, JSON_ENCODE_ANY | JSON_INDENT(1)); - json_decref(customData); json_decref(msg); SendCastMessage(Ctx, CAST_MEDIA, Ctx->transportId, "%s", str); @@ -255,8 +254,7 @@ void CastPlay(struct sCastCtx* Ctx, struct metadata_s* MetaData) { LOG_WARN("[%p]: PLAY req w/o a session", Ctx->owner); } - } - else { + } else { tReqItem* req = malloc(sizeof(tReqItem)); req->data.customData = customData; strcpy(req->Type, "PLAY"); diff --git a/application/squeeze2cast/castcore.c b/application/squeeze2cast/castcore.c index 3d053a4f..79643c2a 100644 --- a/application/squeeze2cast/castcore.c +++ b/application/squeeze2cast/castcore.c @@ -387,6 +387,7 @@ void CastQueueFlush(cross_queue_t *Queue) { while ((item = queue_extract(Queue)) != NULL) { if (!strcasecmp(item->Type,"LOAD")) json_decref(item->data.msg); + else if (!strcasecmp(item->Type, "PLAY") && item->data.customData) json_decref(item->data.customData); free(item); } } @@ -436,8 +437,7 @@ void ProcessQueue(tCastCtx *Ctx) { SendCastMessage(Ctx, CAST_RECEIVER, NULL, "{\"type\":\"SET_VOLUME\",\"requestId\":%d,\"volume\":{\"muted\":false}}", Ctx->reqId); - } - else { + } else { SendCastMessage(Ctx, CAST_RECEIVER, NULL, "{\"type\":\"SET_VOLUME\",\"requestId\":%d,\"volume\":{\"muted\":true}}", Ctx->reqId); @@ -462,13 +462,11 @@ void ProcessQueue(tCastCtx *Ctx) { json_decref(customData); char* str = json_dumps(msg, JSON_ENCODE_ANY | JSON_INDENT(1)); - json_decref(item->data.customData); json_decref(msg); SendCastMessage(Ctx, CAST_MEDIA, Ctx->transportId, "%s", str); NFREE(str); - } - else { + } else { if (item->data.customData) json_decref(item->data.customData); LOG_WARN("[%p]: PLAY un-queued but no media session", Ctx->owner); } @@ -506,8 +504,7 @@ void ProcessQueue(tCastCtx *Ctx) { "{\"type\":\"STOP\",\"requestId\":%d}", Ctx->waitId); Ctx->Status = CAST_CONNECTED; - } - else if (Ctx->mediaSessionId) { + } else if (Ctx->mediaSessionId) { SendCastMessage(Ctx, CAST_MEDIA, Ctx->transportId, "{\"type\":\"STOP\",\"requestId\":%d,\"mediaSessionId\":%d}", Ctx->waitId, Ctx->mediaSessionId); diff --git a/application/squeeze2cast/inc/squeezedefs.h b/application/squeeze2cast/inc/squeezedefs.h index 10adf9ca..7ae5169a 100644 --- a/application/squeeze2cast/inc/squeezedefs.h +++ b/application/squeeze2cast/inc/squeezedefs.h @@ -10,7 +10,7 @@ #pragma once -#define VERSION "v2.2.7"" ("__DATE__" @ "__TIME__")" +#define VERSION "v2.2.8"" ("__DATE__" @ "__TIME__")" // hopefully we'll get rid of this one at some point #define STR_LEN 256 diff --git a/plugin/Bin/squeeze2cast-freebsd-x86_64 b/plugin/Bin/squeeze2cast-freebsd-x86_64 index b1cb9fdf..ed167c8d 100644 Binary files a/plugin/Bin/squeeze2cast-freebsd-x86_64 and b/plugin/Bin/squeeze2cast-freebsd-x86_64 differ diff --git a/plugin/Bin/squeeze2cast-freebsd-x86_64-static b/plugin/Bin/squeeze2cast-freebsd-x86_64-static index 232cd90d..de0c20d4 100644 Binary files a/plugin/Bin/squeeze2cast-freebsd-x86_64-static and b/plugin/Bin/squeeze2cast-freebsd-x86_64-static differ diff --git a/plugin/Bin/squeeze2cast-linux-aarch64 b/plugin/Bin/squeeze2cast-linux-aarch64 index 2d3eafbd..0a626d9a 100644 Binary files a/plugin/Bin/squeeze2cast-linux-aarch64 and b/plugin/Bin/squeeze2cast-linux-aarch64 differ diff --git a/plugin/Bin/squeeze2cast-linux-aarch64-static b/plugin/Bin/squeeze2cast-linux-aarch64-static index fcdafc29..23c1299c 100644 Binary files a/plugin/Bin/squeeze2cast-linux-aarch64-static and b/plugin/Bin/squeeze2cast-linux-aarch64-static differ diff --git a/plugin/Bin/squeeze2cast-linux-arm b/plugin/Bin/squeeze2cast-linux-arm index 32d18674..004dc76b 100644 Binary files a/plugin/Bin/squeeze2cast-linux-arm and b/plugin/Bin/squeeze2cast-linux-arm differ diff --git a/plugin/Bin/squeeze2cast-linux-arm-static b/plugin/Bin/squeeze2cast-linux-arm-static index 32f14d83..da2e2866 100644 Binary files a/plugin/Bin/squeeze2cast-linux-arm-static and b/plugin/Bin/squeeze2cast-linux-arm-static differ diff --git a/plugin/Bin/squeeze2cast-linux-armv5 b/plugin/Bin/squeeze2cast-linux-armv5 index abbebd03..70cd2a6e 100644 Binary files a/plugin/Bin/squeeze2cast-linux-armv5 and b/plugin/Bin/squeeze2cast-linux-armv5 differ diff --git a/plugin/Bin/squeeze2cast-linux-armv5-static b/plugin/Bin/squeeze2cast-linux-armv5-static index a7925282..a1378e32 100644 Binary files a/plugin/Bin/squeeze2cast-linux-armv5-static and b/plugin/Bin/squeeze2cast-linux-armv5-static differ diff --git a/plugin/Bin/squeeze2cast-linux-armv6 b/plugin/Bin/squeeze2cast-linux-armv6 index 42b4fc67..983db3c9 100644 Binary files a/plugin/Bin/squeeze2cast-linux-armv6 and b/plugin/Bin/squeeze2cast-linux-armv6 differ diff --git a/plugin/Bin/squeeze2cast-linux-armv6-static b/plugin/Bin/squeeze2cast-linux-armv6-static index 3b234672..9a3ec687 100644 Binary files a/plugin/Bin/squeeze2cast-linux-armv6-static and b/plugin/Bin/squeeze2cast-linux-armv6-static differ diff --git a/plugin/Bin/squeeze2cast-linux-mips b/plugin/Bin/squeeze2cast-linux-mips index 26ea1eea..d03742b9 100644 Binary files a/plugin/Bin/squeeze2cast-linux-mips and b/plugin/Bin/squeeze2cast-linux-mips differ diff --git a/plugin/Bin/squeeze2cast-linux-mips-static b/plugin/Bin/squeeze2cast-linux-mips-static index a21cc07d..ae9570bb 100644 Binary files a/plugin/Bin/squeeze2cast-linux-mips-static and b/plugin/Bin/squeeze2cast-linux-mips-static differ diff --git a/plugin/Bin/squeeze2cast-linux-powerpc b/plugin/Bin/squeeze2cast-linux-powerpc index 54ca15b5..442033ad 100644 Binary files a/plugin/Bin/squeeze2cast-linux-powerpc and b/plugin/Bin/squeeze2cast-linux-powerpc differ diff --git a/plugin/Bin/squeeze2cast-linux-powerpc-static b/plugin/Bin/squeeze2cast-linux-powerpc-static index ab22ad0f..f8f864c9 100644 Binary files a/plugin/Bin/squeeze2cast-linux-powerpc-static and b/plugin/Bin/squeeze2cast-linux-powerpc-static differ diff --git a/plugin/Bin/squeeze2cast-linux-sparc64 b/plugin/Bin/squeeze2cast-linux-sparc64 index da58fa4b..7b6e7527 100644 Binary files a/plugin/Bin/squeeze2cast-linux-sparc64 and b/plugin/Bin/squeeze2cast-linux-sparc64 differ diff --git a/plugin/Bin/squeeze2cast-linux-sparc64-static b/plugin/Bin/squeeze2cast-linux-sparc64-static index 2cb8a6a7..1c707275 100644 Binary files a/plugin/Bin/squeeze2cast-linux-sparc64-static and b/plugin/Bin/squeeze2cast-linux-sparc64-static differ diff --git a/plugin/Bin/squeeze2cast-linux-x86 b/plugin/Bin/squeeze2cast-linux-x86 index 3f981b27..0d17f80c 100644 Binary files a/plugin/Bin/squeeze2cast-linux-x86 and b/plugin/Bin/squeeze2cast-linux-x86 differ diff --git a/plugin/Bin/squeeze2cast-linux-x86-static b/plugin/Bin/squeeze2cast-linux-x86-static index b01b48f6..d0c2c0fb 100644 Binary files a/plugin/Bin/squeeze2cast-linux-x86-static and b/plugin/Bin/squeeze2cast-linux-x86-static differ diff --git a/plugin/Bin/squeeze2cast-linux-x86_64 b/plugin/Bin/squeeze2cast-linux-x86_64 index e3aa1df9..585e0308 100644 Binary files a/plugin/Bin/squeeze2cast-linux-x86_64 and b/plugin/Bin/squeeze2cast-linux-x86_64 differ diff --git a/plugin/Bin/squeeze2cast-linux-x86_64-static b/plugin/Bin/squeeze2cast-linux-x86_64-static index 5a2127b7..5670f3c4 100644 Binary files a/plugin/Bin/squeeze2cast-linux-x86_64-static and b/plugin/Bin/squeeze2cast-linux-x86_64-static differ diff --git a/plugin/Bin/squeeze2cast-macos b/plugin/Bin/squeeze2cast-macos index f0e85e06..c64d3761 100644 Binary files a/plugin/Bin/squeeze2cast-macos and b/plugin/Bin/squeeze2cast-macos differ diff --git a/plugin/Bin/squeeze2cast-macos-arm64 b/plugin/Bin/squeeze2cast-macos-arm64 index 6ff70140..9e91c3d6 100644 Binary files a/plugin/Bin/squeeze2cast-macos-arm64 and b/plugin/Bin/squeeze2cast-macos-arm64 differ diff --git a/plugin/Bin/squeeze2cast-macos-arm64-static b/plugin/Bin/squeeze2cast-macos-arm64-static index cbe8346a..b7ab6211 100644 Binary files a/plugin/Bin/squeeze2cast-macos-arm64-static and b/plugin/Bin/squeeze2cast-macos-arm64-static differ diff --git a/plugin/Bin/squeeze2cast-macos-static b/plugin/Bin/squeeze2cast-macos-static index e41e9409..6af7f9fd 100644 Binary files a/plugin/Bin/squeeze2cast-macos-static and b/plugin/Bin/squeeze2cast-macos-static differ diff --git a/plugin/Bin/squeeze2cast-macos-x86_64 b/plugin/Bin/squeeze2cast-macos-x86_64 index a136e642..aa867365 100644 Binary files a/plugin/Bin/squeeze2cast-macos-x86_64 and b/plugin/Bin/squeeze2cast-macos-x86_64 differ diff --git a/plugin/Bin/squeeze2cast-macos-x86_64-static b/plugin/Bin/squeeze2cast-macos-x86_64-static index 996611a6..1ae3b681 100644 Binary files a/plugin/Bin/squeeze2cast-macos-x86_64-static and b/plugin/Bin/squeeze2cast-macos-x86_64-static differ diff --git a/plugin/Bin/squeeze2cast-solaris-x86_64 b/plugin/Bin/squeeze2cast-solaris-x86_64 index 9f736eb1..a1da1711 100644 Binary files a/plugin/Bin/squeeze2cast-solaris-x86_64 and b/plugin/Bin/squeeze2cast-solaris-x86_64 differ diff --git a/plugin/Bin/squeeze2cast-solaris-x86_64-static b/plugin/Bin/squeeze2cast-solaris-x86_64-static index b5f13962..4e595a61 100644 Binary files a/plugin/Bin/squeeze2cast-solaris-x86_64-static and b/plugin/Bin/squeeze2cast-solaris-x86_64-static differ diff --git a/plugin/Bin/squeeze2cast-static.exe b/plugin/Bin/squeeze2cast-static.exe index 8c3be170..bdbd93ec 100644 Binary files a/plugin/Bin/squeeze2cast-static.exe and b/plugin/Bin/squeeze2cast-static.exe differ diff --git a/plugin/Bin/squeeze2cast.exe b/plugin/Bin/squeeze2cast.exe index c41471d1..d8d08f9f 100644 Binary files a/plugin/Bin/squeeze2cast.exe and b/plugin/Bin/squeeze2cast.exe differ diff --git a/plugin/CHANGELOG b/plugin/CHANGELOG index 7d412eef..a542328e 100644 --- a/plugin/CHANGELOG +++ b/plugin/CHANGELOG @@ -1,3 +1,6 @@ +2.2.8 + - json_pack with "so" does not require object's ref to be decremented + 2.2.7 - in opus & vorbis direct decode mode, don't end before DISCONNECT and streambuf empty - fix sync loop (build-up issue) in vorbis & opus direct decode diff --git a/plugin/install.xml b/plugin/install.xml index 8bb62692..eb302df9 100644 --- a/plugin/install.xml +++ b/plugin/install.xml @@ -1,13 +1,13 @@ + plugins/CastBridge/settings/basic.html * SlimServer 8.0 - plugins/CastBridge/settings/basic.html Philippe - 2.2.7 + 2.2.8 PLUGIN_CASTBRIDGE PLUGIN_CASTBRIDGE_DESC philippe_44@outlook.com