MrXRay

MrXRay MrXRay

Niner since 2016

Comments

  • Defrag Tools #152 - Media eXperience Analyzer part 4: Video Glitch Analysis

    @NG7711 when you speed forward or backward the video element probably perform a seek, so video is not playing and no glitch will be logged, the procedure that I normally use is to zoom in the trace to the point where video started playing back again. look for the threads from the video app that you are using and follow the readythreads to find what is causing video to not playback earlier.

    What app are you using? does it repro on any local content or with an specific content?

  • Defrag Tools #150 - Media eXperience Analyzer part 2: Video Playback Power Saving

    HI Gary,

             DirectX is used when the tool is local and GDI when used over remote desktop.

    To display the DX Surface on C# we use D3DImage, note that you need to implement your rendering function where you handle the update of The D3DImage. something like

    // Get the pointer to Dx surface on c++
    IntPtr pSurface = WrapperTo YourC++Class.GetSurface();
    if (pSurface != IntPtr.Zero)
    {
         m_d3dimage.Lock();
         m_d3dimage.SetBackBuffer(D3DResourceType.IDirect3DSurface9, pSurface);

         WrapperTo YourC++Class.Render();

         m_d3dimage.AddDirtyRect(new Int32Rect(0,
                                        0,
                                        m_d3dimage.PixelWidth,
                                        m_d3dimage.PixelHeight));
                                       m_d3dimage.Unlock();
    }

    msdn has this sample https://msdn.microsoft.com/en-us/library/jj591490.aspx

    if you Bing "D3DImage c++ sample" you will get several other useful hits,

    Let me know if that helps,

    Thanks

    Jose