mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-07-04 13:22:52 +01:00
dlna fixes
This commit is contained in:
@@ -66,8 +66,8 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
}
|
||||
}
|
||||
|
||||
private string _transportState = String.Empty;
|
||||
public string TransportState
|
||||
private TRANSPORTSTATE _transportState = TRANSPORTSTATE.STOPPED;
|
||||
public TRANSPORTSTATE TransportState
|
||||
{
|
||||
get
|
||||
{
|
||||
@@ -80,8 +80,7 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
|
||||
_transportState = value;
|
||||
|
||||
if (value == TRANSPORTSTATE.PLAYING || value == TRANSPORTSTATE.STOPPED)
|
||||
NotifyPlaybackChanged(value == TRANSPORTSTATE.STOPPED);
|
||||
NotifyPlaybackChanged(value);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -374,7 +373,7 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
.ConfigureAwait(false);
|
||||
|
||||
await Task.Delay(50).ConfigureAwait(false);
|
||||
TransportState = "PAUSED_PLAYBACK";
|
||||
TransportState = TRANSPORTSTATE.PAUSED_PLAYBACK;
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -492,7 +491,14 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
var transportStateValue = transportState == null ? null : transportState.Value;
|
||||
|
||||
if (transportStateValue != null)
|
||||
TransportState = transportStateValue;
|
||||
{
|
||||
TRANSPORTSTATE state;
|
||||
|
||||
if (Enum.TryParse(transportStateValue, true, out state))
|
||||
{
|
||||
TransportState = state;
|
||||
}
|
||||
}
|
||||
|
||||
UpdateTime = DateTime.UtcNow;
|
||||
}
|
||||
@@ -857,13 +863,13 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
public event EventHandler<TransportStateEventArgs> PlaybackChanged;
|
||||
public event EventHandler<CurrentIdEventArgs> CurrentIdChanged;
|
||||
|
||||
private void NotifyPlaybackChanged(bool value)
|
||||
private void NotifyPlaybackChanged(TRANSPORTSTATE state)
|
||||
{
|
||||
if (PlaybackChanged != null)
|
||||
{
|
||||
PlaybackChanged.Invoke(this, new TransportStateEventArgs
|
||||
{
|
||||
Stopped = IsStopped
|
||||
State = state
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -895,14 +901,14 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
return String.Format("{0} - {1}", Properties.Name, Properties.BaseUrl);
|
||||
}
|
||||
|
||||
private class TRANSPORTSTATE
|
||||
{
|
||||
public const string STOPPED = "STOPPED";
|
||||
public const string PLAYING = "PLAYING";
|
||||
public const string TRANSITIONING = "TRANSITIONING";
|
||||
public const string PAUSED_PLAYBACK = "PAUSED_PLAYBACK";
|
||||
public const string PAUSED = "PAUSED";
|
||||
}
|
||||
}
|
||||
|
||||
public enum TRANSPORTSTATE
|
||||
{
|
||||
STOPPED,
|
||||
PLAYING,
|
||||
TRANSITIONING,
|
||||
PAUSED_PLAYBACK,
|
||||
PAUSED
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,10 +88,10 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
if (_currentItem == null)
|
||||
return;
|
||||
|
||||
if (e.Stopped == false)
|
||||
if (e.State == TRANSPORTSTATE.STOPPED)
|
||||
await ReportProgress().ConfigureAwait(false);
|
||||
|
||||
else if (e.Stopped && _playbackStarted)
|
||||
else if (e.State == TRANSPORTSTATE.STOPPED && _playbackStarted)
|
||||
{
|
||||
_playbackStarted = false;
|
||||
|
||||
|
||||
@@ -4,6 +4,6 @@ namespace MediaBrowser.Dlna.PlayTo
|
||||
{
|
||||
public class TransportStateEventArgs : EventArgs
|
||||
{
|
||||
public bool Stopped { get; set; }
|
||||
public TRANSPORTSTATE State { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user