public PlayRadioEventArgs(RadioQuality quality, RadioEntry radio) { Radio = radio; Quality = quality; }
public void Start(RadioQuality quality) { _mediaPlayer.Play(quality, null); }
public PlayerStade Play(RadioQuality radio, IScript script) { if(radio.IsEmpty || string.IsNullOrWhiteSpace(radio.Url)) return new PlayerStade(PlayerErrorStade.NoQuality, null); try { _script = script; string url = radio.Url; var lazyEngine = _playbackEngines.FirstOrDefault(en => en.Metadata.Name == string.Empty); if (lazyEngine == null) return new PlayerStade(PlayerErrorStade.NoEngine, null); IPlaybackEngine engine = lazyEngine.Value; if (url[0] == '[') { int index = url.IndexOf(']'); if (index != -1) { string[] values = url.Split(new[] {']'}, 2, StringSplitOptions.RemoveEmptyEntries); values[0] = values[0].Substring(1); var tempEngine = _playbackEngines.FirstOrDefault(en => en.Metadata.Name == values[0]); if (tempEngine != null) { try { engine = tempEngine.Value; url = values[1]; } catch (Exception) { url = radio.Url; } } } } BeginPlayback(url, engine); } catch (BassException bassException) { return new PlayerStade(PlayerErrorStade.Error, bassException); } _isPlaying = true; return new PlayerStade(PlayerErrorStade.Success, null); }
public void Play(RadioQuality radio, IScript script) { _script = script; string url = radio.Url; IPlaybackEngine engine = _playbackEngines.First(en => en.Metadata.Name == string.Empty).Value; if (url[0] == '[') { int index = url.IndexOf(']'); if (index != -1) { string[] values = url.Split(new[] {']'}, 2, StringSplitOptions.RemoveEmptyEntries); values[0] = values[0].Substring(1); var tempEngine = _playbackEngines.FirstOrDefault(en => en.Metadata.Name == values[0]); if (tempEngine != null) { try { engine = tempEngine.Value; url = values[1]; } catch (Exception) { url = radio.Url; } } } } BeginPlayback(url, engine); }