AllowAudioStreamCopy:!1},!0)}self.nextTrack(player)}functiononPlaybackStopped(e){varplayer=this;getPlayerData(player).isChangingStream||self.getPlayerState(player).then(function(state){varstreamInfo=getPlayerData(player).streamInfo,nextItem=self._playNextAfterEnded?self._playQueueManager.getNextItemInfo():null,nextMediaType=nextItem?nextItem.item.MediaType:null,playbackStopInfo={player:player,state:state,nextItem:nextItem?nextItem.item:null,nextMediaType:nextMediaType};state.NextMediaType=nextMediaType,isServerItem(streamInfo.item)&&(player.supportsProgress===!1&&state.PlayState&&!state.PlayState.PositionTicks&&(state.PlayState.PositionTicks=streamInfo.item.RunTimeTicks),reportPlayback(state,streamInfo.item.ServerId,"reportPlaybackStopped")),state.NextItem=playbackStopInfo.nextItem,nextItem||self._playQueueManager.reset(),events.trigger(player,"playbackstop",[state]),events.trigger(self,"playbackstop",[playbackStopInfo]);varnewPlayer=nextItem?getPlayer(nextItem.item,currentPlayOptions):null;newPlayer!==player&&(destroyPlayer(player),removeCurrentPlayer(player)),nextItem&&self.nextTrack()})}functiononPlaybackChanging(activePlayer,newPlayer,newItem){returnself.getPlayerState(activePlayer).then(function(state){varpromise,serverId=getPlayerData(activePlayer).streamInfo.item.ServerId;returnunbindStopped(activePlayer),promise=activePlayer===newPlayer?activePlayer.stop(!1,!0):activePlayer.stop(!0,!0),promise.then(function(){bindStopped(activePlayer),reportPlayback(state,serverId,"reportPlaybackStopped"),events.trigger(self,"playbackstop",[{player:activePlayer,state:state,nextItem:newItem,nextMediaType:newItem.MediaType}])})})}functionbindStopped(player){enableLocalPlaylistManagement(player)&&(events.off(player,"stopped",onPlaybackStopped),events.on(player,"stopped",onPlaybackStopped))}functiononPlaybackTimeUpdate(e){varplayer=this;sendProgressUpdate(player,"timeupdate")}functiononPlaybackPause(e){varplayer=this;sendProgressUpdate(player,"pause")}functiononPlaybackUnpause(e){varplayer=this;sendProgressUpdate(player,"unpause")}functiononPlaybackVolumeChange(e){varplayer=this;sendProgressUpdate(player,"volumechange")}functiononRepeatModeChange(e){varplayer=this;sendProgressUpdate(player,"repeatmodechange")}functionunbindStopped(player){events.off(player,"stopped",onPlaybackStopped)}functioninitLegacyVolumeMethods(player){player.getVolume=function(){returnplayer.volume()},player.setVolume=function(val){returnplayer.volume(val)}}functioninitMediaPlayer(player){players.push(player),players.sort(function(a,b){return(a.priority||0)-(b.priority||0)}),player.isLocalPlayer!==!1&&(player.isLocalPlayer=!0),player.currentState={},player.getVolume&&player.setVolume||initLegacyVolumeMethods(player),enableLocalPlaylistManagement(player)&&(events.on(player,"error",onPlaybackError),events.on(player,"pause",onPlaybackPause),events.on(player,"timeupdate",onPlaybackTimeUpdate),events.on(player,"unpause",onPlaybackUnpause),events.on(player,"volumechange",onPlaybackVolumeChange),events.on(player,"repeatmodechange",onRepeatModeChange)),player.isLocalPlayer&&bindToFullscreenChange(player),bindStopped(player)}functionsendProgressUpdate(player,progressEventName){if(!player)thrownewError("player cannot be null");self.getPlayerState(player).then(function(state){if(state.NowPlayingItem){varserverId=state.NowPlayingItem.ServerId;reportPlayback(state,serverId,"reportPlaybackProgress",progressEventName)}})}varcurrentTargetInfo,lastLocalPlayer,currentPlayOptions,self=this,players=[],currentPairingId=null;this._playNextAfterEnded=!0;varplayerStates={};this._playQueueManager=newPlayQueueManager,self.currentItem=function(player){if(!player)thrownewError("player cannot be null");vardata=getPlayerData(player);returndata.streamInfo?data.streamInfo.item:null},self.currentMediaSource=function(player){if(!player)thrownewError("player cannot be null");vardata=getPlayerData(player);returndata.streamInfo?data.streamInfo.mediaSource:null},self.getPlayerInfo=function(){varplayer=self._currentPlayer;if(!player)returnnull;vartarget=cur