private void UpdateTime(CurrentUpnpPlayback curPlayback) { TotalTime = TimeSpan.Parse(curPlayback.PosDuration); Time = TimeSpan.Parse(curPlayback.PosReltime); var perc = ((double)Time.Ticks * 100 / TotalTime.Ticks); if (!double.IsNaN(perc)) { Percentage = perc; } }
public PlayingUpnpItemVm(CurrentUpnpPlayback curPlayback, IAppContext appContext) : base(appContext) { _curPlayback = curPlayback; _appContext = appContext; Id = curPlayback.PosTrackuri; UpdateTime(curPlayback); PlayToInfo = "Playing to " + curPlayback.MediaRendererDevice.FriendlyName; var parts = _curPlayback.PosTrackuri.Split('/'); string filename = parts.Last(); Label = filename; string path; _appContext.Upnp.PathLookup.TryGetValue(curPlayback.PosTrackuri, out path); GetItemInfo(path); }
public async Task Refresh() { _curPlayback = await _curPlayback.MediaRendererDevice.AVTransport.GetCurrentPlaybackItem(); UpdateTime(_curPlayback); }
private ICurrentPlayingItem CurrentItemFactory(CurrentUpnpPlayback curPlayback) { return(new PlayingUpnpItemVm(curPlayback, _appContext)); }