private void OnNewFrameCallback(PlanarFrame frame) { data.Data = frame.Planes[0]; data.DataSize = frame.Lenghts[0]; data.PTS = frameCounter++ * MicroSecondsBetweenFrame; m_inputMedia.AddFrame(data); if (/*m_inputMedia.PendingFramesCount == 10 && */!m_renderPlayer.IsPlaying) { m_renderPlayer.Play(); } }
private void OnNewFrameCallback(PlanarFrame frame) { _data.Data = frame.Planes[0]; _data.DataSize = frame.Lenghts[0]; _data.Pts = _frameCounter++ * _microSecondsBetweenFrame; _mInputMedia.AddFrame(_data); if (/*m_inputMedia.PendingFramesCount == 10 && */!_mRenderPlayer.IsPlaying) { _mRenderPlayer.Play(); } }
private void OnNewFrame(PlanarFrame frame) { m_image.Dispatcher.Invoke(new Action(delegate { if (!m_image.IsFrontBufferAvailable) { return; } m_image.Lock(); m_render.Display(frame.Planes[0], frame.Planes[2], frame.Planes[1], false); m_image.AddDirtyRect(new Int32Rect(0, 0, m_image.PixelWidth, m_image.PixelHeight)); m_image.Unlock(); }), DispatcherPriority.Send); }
public static VideoSequenceItem FromPlanarFrame(PlanarFrame data, BitmapFormat format) { VideoSequenceItem frame = new VideoSequenceItem(); frame.Target = new PlanarImage(format.Width, format.Height, GetYuvType(format.ChromaType), data.Planes); return frame; }
private void OnNewFrame(PlanarFrame pData) { if (m_render.IsDeviceAvailable) { m_render.Display(pData.Planes[0], pData.Planes[2], pData.Planes[1], false); } }