diff --git a/receivers/common/web/player/Renderer.ts b/receivers/common/web/player/Renderer.ts index a178fe2..3c39373 100644 --- a/receivers/common/web/player/Renderer.ts +++ b/receivers/common/web/player/Renderer.ts @@ -71,7 +71,7 @@ function onPlayerLoad(value: PlayMessage) { player.setPlaybackRate(value.speed); playerCtrlStateUpdate(PlayerControlEvent.SetPlaybackRate); } - if (value.volume) { + if (value.volume !== null && value.volume >= 0) { volumeChangeHandler(value.volume); } else { diff --git a/receivers/electron/src/Main.ts b/receivers/electron/src/Main.ts index 635b680..c3bf107 100644 --- a/receivers/electron/src/Main.ts +++ b/receivers/electron/src/Main.ts @@ -165,7 +165,7 @@ export class Main { // Protocol v2 FCast PlayMessage does not contain volume field and could result in the receiver // getting out-of-sync with the sender when player windows are closed and re-opened. Volume // is cached in the play message when volume is not set in v3 PlayMessage. - message.volume = message.volume || message.volume === undefined ? Main.cache.playerVolume : message.volume; + message.volume = message.volume === undefined ? Main.cache.playerVolume : message.volume; // eslint-disable-next-line @typescript-eslint/no-explicit-any let rendererMessage: any = await NetworkService.proxyPlayIfRequired(message);