Try not use YUVFile driver or any of these types, they use underline system files to share data between process. Sharing a file implies in the use of the harddrive, the worst thing you can get for streaming because the high levels of read/write latency.
Pipes are cool, in the POSIX world a opened file in this way are a pipe, that use RAM to transfer the data, but you can't assegure this in others enviroments (like Windows)
The best way you can do something is derivate a PVideoOutputDevice or a PAudioOutputDevice and hand write your own 100% guaranted solution. I make this to transfer the video data into the Java VM's world.
The basic think in these calsses are to overwrite the Open, Start, Stop and SetFrameData method. The SetFrameData receive the Raw data already decoded from the CODEC.
The code below is a modified part of my code of how to open a video channel in H323EndPoint, this code is a part of the sub project RNP-2472, and it is under GNU General Public License.