private void OnMediaStreamSourceStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { using (var frame = _frameGenerator.WaitForNewFrame()) { args.Request.SetActualStartPosition(frame.SystemRelativeTime); } }
async void MSS_Starting(Windows.Media.Core.MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { MediaStreamSourceStartingRequest request = args.Request; if ((request.StartPosition != null) && request.StartPosition.Value <= MSS.Duration) { UInt64 sampleOffset = (UInt64)request.StartPosition.Value.Ticks / (UInt64)sampleDuration.Ticks; timeOffset = new TimeSpan((long)sampleOffset * sampleDuration.Ticks); byteOffset = sampleOffset * sampleSize; } // create the RandomAccessStream for the input file for the first time if (mssStream == null) { MediaStreamSourceStartingRequestDeferral deferal = request.GetDeferral(); try { mssStream = await inputMP3File.OpenAsync(FileAccessMode.Read); request.SetActualStartPosition(timeOffset); deferal.Complete(); } catch (Exception) { MSS.NotifyError(MediaStreamSourceErrorStatus.FailedToOpenFile); deferal.Complete(); } } else { request.SetActualStartPosition(timeOffset); } }
void mss_Starting(Windows.Media.Core.MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { Debug.WriteLine("Starting."); _sampleMaker.Initialize(_mss, _videoDesc); args.Request.SetActualStartPosition(new TimeSpan(0)); }
private void mss_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { //threadSync.WaitOne();//make the codec wait on us to start? frameCount = 0; //_sampleGenerator.Initialize(_mss, videoDesc); args.Request.SetActualStartPosition(new TimeSpan(0)); }
private void OnMediaStreamSourceStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { DrainFramePool(); using (var frame = GetNextFrame()) { args.Request.SetActualStartPosition(frame.SystemRelativeTime); } }
private void OnMSSStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { if (parent != null) { parent.StartWritingOutput("OnStarting", 1); } args.Request.SetActualStartPosition(Timestamp); }
private void OnMediaSourceStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs e) { if (e.Request.StartPosition.HasValue) { _currentTime = e.Request.StartPosition.Value.TotalSeconds; _mediaDecoder.Seek(e.Request.StartPosition.Value); } e.Request.SetActualStartPosition(TimeSpan.FromSeconds(_currentTime)); }
void MSS_Starting(Windows.Media.Core.MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { if (!m_hasSetMediaSource || advanced_media_source == null) { return; } advanced_media_source.Initialize(media_stream_source, videoDesc, audioDesc); args.Request.SetActualStartPosition(new TimeSpan(0)); }
void mp4_Starting(Windows.Media.Core.MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { Debug.WriteLine("Starting."); //_sampleMaker.Initialize(_mss, _videoDesc); var folder = Windows.ApplicationModel.Package.Current.InstalledLocation; _mp4Sampler.Initialise(folder.Path + @"\Assets\big_buck_bunny.mp4"); args.Request.SetActualStartPosition(new TimeSpan(0)); }
async void mss_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { var deferral = args.Request.GetDeferral(); // TODO: defer starting event until first frame recieved rather than adding a delay here await Task.Delay(2000); args.Request.SetActualStartPosition(new TimeSpan(0)); deferral.Complete(); }
/// <summary> /// Вызывается, когда источник мультимедиа готов запрашивать сэмплы. /// </summary> private void MediaSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { var request = args.Request; if (request.StartPosition != null && request.StartPosition.Value <= _mediaSource.Duration) { long sampleOffset = request.StartPosition.Value.Ticks / _sampleDuration.Ticks; _timeOffset = TimeSpan.FromTicks(sampleOffset * _sampleDuration.Ticks); _byteOffset = sampleOffset * BUFFER_SIZE; } request.SetActualStartPosition(_timeOffset); }
private void OnMediaStreamSourceStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { Debug.Assert(Dispatcher.HasThreadAccess == false); if (sender == localVideoSource) { LogMessage("Starting local A/V stream..."); //webRTCNativePlugin.Peer.AddStream(audio: true, video_device_index: _video_device_index); } else if (sender == remoteVideoSource) { LogMessage("Starting remote A/V stream..."); } args.Request.SetActualStartPosition(TimeSpan.Zero); }
void mkvStreamSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { MediaStreamSourceStartingRequest request = args.Request; if (request.StartPosition.HasValue && sender.CanSeek) { var deferal = request.GetDeferral(); var mkvFs = mediaStreamFileSource as CCPlayer.HWCodecs.Matroska.MKV.MKVFileSource; if (mkvFs != null) { var newTime = mkvFs.Seek((ulong)request.StartPosition.Value.Ticks / 10000); request.SetActualStartPosition(newTime); } deferal.Complete(); } }
private void flvStreamSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { MediaStreamSourceStartingRequest request = args.Request; if (request.StartPosition.HasValue && sender.CanSeek) { var deferal = request.GetDeferral(); var flvFile = mediaStreamFileSource as FlvFile; if (flvFile != null) { var newTime = SeekForFlv(flvFile, (long)(request.StartPosition.Value.TotalMilliseconds * 10000)); request.SetActualStartPosition(TimeSpan.FromTicks(newTime)); } deferal.Complete(); } }
public void Starting(MediaStreamSource s, MediaStreamSourceStartingEventArgs e) { var req = e.Request; var spos = req.StartPosition; Debug.WriteLine("Starting:" + lk); if (lk && (spos != null) && spos.Value <= s.Duration) { if (!Reload(spos.GetValueOrDefault().TotalSeconds)) { lk = false; Task.Run(async() => { await Task.Delay(3000); lk = true; Debug.WriteLine("Starting:END\n\n"); req.SetActualStartPosition(spos.GetValueOrDefault()); }); } } }
public async void Starting(MediaStreamSource s, MediaStreamSourceStartingEventArgs e) { if (lock1) { return; } lock1 = true; var req = e.Request; var deferal = req.GetDeferral(); var spos = req.StartPosition; Debug.WriteLine("Starting:START"); if ((spos != null) && spos.Value <= s.Duration) { await Task.Run(async() => { var res = Reload(spos.Value.TotalSeconds); await Task.Delay(1000); req.SetActualStartPosition(spos.Value); }); } lock1 = false; deferal.Complete(); }
private void MediaStreamSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { //todo fire an event? }
private void Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { throw new NotImplementedException(); }
private void Mss_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { Debug.WriteLine("Mss_Starting"); }
private void OnStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { m_generator.Start(args.Request); }
private void OnMediaStreamSourceStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { //Debug.Assert(Dispatcher.HasThreadAccess == false); Logger.Log("Video playback stream source starting..."); args.Request.SetActualStartPosition(TimeSpan.Zero); }
void _mss_Starting(Windows.Media.Core.MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { _sampleGenerator.Initialize(_mss, _videoDesc); args.Request.SetActualStartPosition(new TimeSpan(0)); }
private void OnStart(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { args.Request.SetActualStartPosition(DateTime.Now - encodingStart); }
private void MediaStreamSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { //args.Request.SetActualStartPosition(timeOffSet); //args.Request. }
/// <summary> /// Occurs when the MediaStreamSource is ready to start requesting MediaStreamSample objects. /// </summary> /// <param name="sender">Represents a media source that delivers media samples directly to the media pipeline.</param> /// <param name="args">Provides data for the MediaStreamSource.Starting event.</param> private void OnStreamSourceStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { MediaStreamSourceStartingRequest request = args.Request; if ((request.StartPosition != null) && request.StartPosition.Value <= m_mediaStreamSource.Duration) { UInt64 sampleOffset = (UInt64)request.StartPosition.Value.Ticks / (UInt64)sampleDuration.Ticks; this.m_timeOffset = new TimeSpan((long)sampleOffset * sampleDuration.Ticks); this.m_byteOffset = sampleOffset * sampleSize; } if (this.m_mediaStream == null) { MediaStreamSourceStartingRequestDeferral deferal = request.GetDeferral(); try { this.m_mediaStream = this.m_audioStreamDownloader.Stream; request.SetActualStartPosition(new TimeSpan()); } catch (Exception) { throw; } finally { deferal.Complete(); } } else { request.SetActualStartPosition(m_timeOffset); } }
private void MediaStreamSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { lastPauseTime = null; }
protected virtual void MssOnStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { Debug.WriteLine("StreamSourceBase.MssOnStarting()"); if (args.Request.StartPosition.HasValue) { Time = args.Request.StartPosition.Value; Position = (ulong)Math.Round(_encodingProperties.SampleRate * Time.TotalSeconds); } args.Request.SetActualStartPosition(Time); }
private void OnStarting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { var request = args.Request; request.SetActualStartPosition(TimeSpan.Zero); }
private void MediaStreamSource_Starting(MediaStreamSource sender, MediaStreamSourceStartingEventArgs args) { Log("MediaStreamSource_Starting"); args.Request.SetActualStartPosition(new TimeSpan(0)); }