private void MediaElementOnMarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { foreach (var t in e.Marker.Text.Split(',')) { ExecuteAction(new SavedAction(t)); } }
private void MediaPlayer_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { if (e.Marker.Type == "EndTimeCode") { MediaPlayer.Pause(); SeekToMediaPosition(CurrentNode.StartTimeCodeProvided ? CurrentNode.StartTime : TimeSpan.Parse("00:00:00")); MediaPlayer_CurrentStateChanged(sender, new RoutedEventArgs()); MainUI.PlayControl.StopState(); } var markerEvent = new Event { Name = "TimelineMarkerEvent", EventArgs = new List <EventArg> { { new EventArg() { Name = "Text", Value = e.Marker.Text } }, { new EventArg() { Name = "Time", Value = e.Marker.Time.TotalSeconds.ToString(CultureInfo.InvariantCulture) } }, { new EventArg() { Name = "Type", Value = e.Marker.Type } } } }; MainUI.Controller.SendEvent(markerEvent); //CurrentNode.PlayingTime = new TimeSpan(); }
private static void music_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { Action <TimelineMarker> ma = MarkerReachedAction; if (ma != null) { ma(e.Marker); } }
void MediaPlayer_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { if (!CurrentPlaylist.EnableCaptions) { return; } foreach (var ctrl in ControlSets) { try { ctrl.CaptionFired(e.Marker); } catch (Exception ex) { drop(ex); } } }
void MediaPlayer_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { if (!MediaPlayer.IsScrubbing) // scrubbing has it's own way of evaluating when ad markers are reached. { if (e.Marker.Type == MarkerType_Play) { PlayAdMarker(e.Marker); } else if (e.Marker.Type == MarkerType_Preload) { PreloadAdMarker(e.Marker); } } }
async void pf_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { if (e.Marker.Type == "myAd") { var adSource = new RemoteAdSource() { Type = VastAdPayloadHandler.AdType, Uri = new Uri("http://smf.blob.core.windows.net/samples/win8/ads/vast_linear.xml") }; //var adSource = new AdSource() { Type = DocumentAdPayloadHandler.AdType, Payload = SampleAdDocument }; var progress = new Progress<AdStatus>(); try { await player.PlayAd(adSource, progress, CancellationToken.None); } catch { /* ignore */ } } }
private void MyMediaElement_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { if (e.Marker.Type == "MyMarker") { // Show marker text made by code this.CaptionTextBlock.FontSize = 22; this.CaptionTextBlock.Text = e.Marker.Text; } else { // Show marker text made by Expression Blend 3 // Because the caption is "out of" the video you get more flexibility to customizing it this.CaptionTextBlock.FontSize = 12; this.CaptionTextBlock.Text = e.Marker.Text; } }
private void MediaElement_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { string logMessage = string.Format(ProgressiveMediaPluginResources.TimelineMarkerReached, e.Marker.Time, e.Marker.Type, e.Marker.Text); SendLogEntry(KnownLogEntryTypes.MediaElementMarkerReached, message: logMessage); var mediaMarker = new MediaMarker { Type = e.Marker.Type, Begin = e.Marker.Time, End = e.Marker.Time, Content = e.Marker.Text }; NotifyMarkerReached(mediaMarker); }
async void pf_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { if (e.Marker.Type == "myAd") { var adSource = new RemoteAdSource() { Type = VastAdPayloadHandler.AdType, Uri = new Uri("http://smf.blob.core.windows.net/samples/win8/ads/vast_linear.xml") }; //var adSource = new AdSource() { Type = DocumentAdPayloadHandler.AdType, Payload = SampleAdDocument }; var progress = new Progress <AdStatus>(); try { await player.PlayAd(adSource, progress, CancellationToken.None); } catch { /* ignore */ } } }
void mediaPlayer_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { Dictionary <string, string> songAttribs = new Dictionary <string, string>(); string playerFeed = System.Net.WebUtility.UrlDecode(e.Marker.Text); char[] delims = { '&' }; string[] Attribs = playerFeed.Split(delims); foreach (String attrib in Attribs) { string[] keypair = attrib.Split('='); string key = ""; string value = ""; try { key = keypair[0]; } catch { key = null; } if (key != null) { try { value = keypair[1]; } catch { value = ""; } songAttribs.Add(keypair[0], keypair[1]); } } var updater = _systemMediaControls.DisplayUpdater; updater.Type = MediaPlaybackType.Music; updater.MusicProperties.Title = songAttribs["title"]; updater.MusicProperties.Artist = songAttribs["artist"]; //updater.MusicProperties.Duration = 0; songDetails.Text = "Artist: " + updater.MusicProperties.Artist + "Title: " + updater.MusicProperties.Title + " playerFeed: " + playerFeed; }
void theSound_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { MediaElement sound = (sender as MediaElement); if (LoopTime > 0) { _loopIndex = (_loopIndex + 1) % _sounds.Count; for (int i = 0; i < _sounds.Count; i++) { if (i == _loopIndex) { _sounds[i].Sound.Position = TimeSpan.FromMilliseconds(0); _sounds[i].Sound.Volume = (Volume == -1) ? 0.5 : Volume; _sounds[i].Sound.Play(); } } } }
void _media_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { OnMarkerReached(e.Marker); if (string.Compare(e.Marker.Type, "marker", StringComparison.InvariantCultureIgnoreCase) <= 0) { if (_activeMarker != null) { _activeMarker.AnimateIn.Stop(); } Marker marker; _markers.TryGetValue(e.Marker.Time, out marker); if (marker != null) { _activeMarker = marker; marker.AnimateIn.Begin(); } } }
async void OnMarkerReached(object sender, TimelineMarkerRoutedEventArgs args) { var index = Convert.ToInt32(args.Marker.Text, 10); if (m_parsedLrc == null || index >= m_parsedLrc.Sentences.Count || m_mediaElement.Position.Ticks + TimeSpan.TicksPerSecond < (TimeSpan.TicksPerMillisecond * m_parsedLrc.Sentences[index].Time - m_offset.Ticks)) { return; } // Divide by 8 => Right shift by 3 await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.High, () => SyncLyrics(index, index > 0 ? (m_parsedLrc.Sentences[index].Time - m_parsedLrc.Sentences[index - 1].Time) >> 3 : 0) ); }
private void HandlePlaybackWindowMarkerReached (Object sender, TimelineMarkerRoutedEventArgs e) { PlaybackWindow.Pause(); var markerItemTime = e.Marker.Time; var matchingFileMarker = ViewModel.CurrentPlaybackFile.FileMarkers. FirstOrDefault(x => x.Time == markerItemTime); if (matchingFileMarker == null) { return; } ViewModel.CurrentFileMarker = matchingFileMarker; TextToSpeechHelper.SpeakContentAsync( matchingFileMarker.TextToSpeechContent, matchingFileMarker.IsSsml, matchingFileMarker.SelectedVoiceId); }
private async void mediaEle_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { try { if (this.danmakus != null) { var res = this.danmakus.Where(d => ((int)d.Time == (int)(e.Marker.Time.TotalSeconds) && d.IsShowed == false)); this.danmakuPres.AddDanmaku(res.FirstOrDefault()); this.danmakus.Where(d => ((int)d.Time == (int)(e.Marker.Time.TotalSeconds) && d.IsShowed == false)).OrderBy(o => o.Time).FirstOrDefault().IsShowed = true; await Task.Delay(100); } } catch (Exception ex) { if (DanmakuLoadFailed != null) { DanmakuLoadFailed(this, new DanmakuExceptionRoutedEventArgs(ex)); } } }
// MarkerReachedのキック時 // movie1到達で一時停止,movie2到達で再生 private void movie_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { //if (!MediaData.IsSlowPlay) //{ if (e.Marker.Text != "disabled") { foreach (var value in MediaData.movieList) { if (value.currentPlayer.movie != movie) { if (value.currentPlayer.movie.CurrentState == MediaElementState.Playing) { PauseMedia(sender, e); } else if (value.currentPlayer.movie.CurrentState == MediaElementState.Paused) { value.currentPlayer.PlayMedia(sender, e); } } } } }
object ITimelineMarkerRoutedEventArgsResolver.OriginalSource(TimelineMarkerRoutedEventArgs e) => e.OriginalSource;
void myMediaElement_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { Scenario3Text.Text += e.Marker.Text + " - " + String.Format("{0:g}", Math.Round(e.Marker.Time.TotalSeconds, 2)) + "\r\n"; }
private void media_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { lblMarker.Text = e.Marker.Text + " at " + e.Marker.Time.TotalSeconds + " seconds"; }
void MediaElement_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) #endif { OnMarkerReached(e.Marker); }
/// <summary> /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed. /// <example> /// timelinemarkerroutedeventhandler.BeginInvoke(sender, e, callback); /// </example> /// </summary> public static IAsyncResult BeginInvoke(this TimelineMarkerRoutedEventHandler timelinemarkerroutedeventhandler, Object sender, TimelineMarkerRoutedEventArgs e, AsyncCallback callback) { if (timelinemarkerroutedeventhandler == null) { throw new ArgumentNullException("timelinemarkerroutedeventhandler"); } return(timelinemarkerroutedeventhandler.BeginInvoke(sender, e, callback, null)); }
TimelineMarker ITimelineMarkerRoutedEventArgsResolver.Marker(TimelineMarkerRoutedEventArgs e) => e.Marker;
/// <summary> /// Gets the <see cref="TimelineMarker"/> that triggered this event. /// </summary> /// <param name="e">The requested <see cref="TimelineMarkerRoutedEventArgs"/>.</param> /// <returns>The <see cref="TimelineMarker"/> that triggered this event.</returns> public static TimelineMarker Marker(this TimelineMarkerRoutedEventArgs e) => Resolver.Marker(e);
public void mediaElement_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { Caption.Text = e.Marker.Text; }
private void player_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { Close_Controls.Begin(); }
private void MediaPlayer_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { //MediaPlayer.Stop(); }
/// <summary> /// Gets a reference to the object that raised the event. /// This is often a template part of a control rather than an element that was declared in your app UI. /// </summary> /// <param name="e">The requested <see cref="TimelineMarkerRoutedEventArgs"/>.</param> /// <returns>The object that raised the event.</returns> public static object OriginalSource(this TimelineMarkerRoutedEventArgs e) => Resolver.OriginalSource(e);
// </SnippetMediaOpenedLiveStream> //private void btnFoo_Click_1(object sender, RoutedEventArgs e) //{ // foreach (UIElement x in StackFoo.Children) // { // if (x is Button) // { // txtDisplay.Text += ((Button)x).Name + " "; // } // } //} // <SnippetTimelineMarker> private void Media_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { txOutput.Text = string.Format("{0},{1},{2}", e.Marker.Time, e.Marker.Text, e.Marker.Type); }
/// <summary> /// Handler for the MediaElement.MarkerReached event. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MediaElement_MarkerReached(object sender, TimelineMarkerRoutedEventArgs e) { // Display marker info when a marker is reached Scenario3Text.Text += e.Marker.Text + ": " + String.Format("{0:g}\n", Math.Round(e.Marker.Time.TotalSeconds, 2)); }