How/where are you checking the value of pBuffer and inFrame.pix? Could it be that the variables you've declared have gone out of scope?
In Transmitter project, in TransmitterPlugin.cpp there is PushVideo() and iteration across inFrames and before Dispose will be called on PPixSuite I'm checking PPixHand's pix member:
// Dispose of the PPix(es) when done!
for (int i=0; i< inPushVideo->inFrameCount; i++)
const tmLabeledFrame &frame = inPushVideo->inFrames[i];
Also when I was trying to access buffer as in first post (prSuiteError result = mSuites.PPixSuite->GetPixels( inFrame, PrPPixBufferAccess_ReadOnly, &pBuffer );) result is same.
What do you have set in Project Settings > General > Video Rendering and Playback? Do you have CUDA or OpenCL rendering on? And in QueryVideoMode, do you have set outPixelFormat = PrPixelFormat_Any?
If so, then the frames are being rendered on the GPU, and PPixSuite->GetPixels() will not retrieve the frames. Instead, for GPU rendering, you should set outPixelFormat to one or more of the uncompressed formats in PrSDKPixelFormat.h, such as PrPixelFormat_BGRA_4444_8u, PrPixelFormat_BGRA_4444_32f, PrPixelFormat_RGB_444_10u, etc.
outPixelFormat is set to PrPixelFormat_Any. When I've changed it to PrPixelFormat_BGRA_4444_8u frame buffer is no longer empty.
Thanks for help