In the current (version <= 1.1) VLC architecture, the video output cannot control the framerate (unless you're willing to discard or duplicate some pictures, that is). If you want to pace decoding, then you need to use the stream output chain, akin to what the smem plugin is doing.
Well, i'm very happy
now because vlc now actually plays video in a window layer on the Bluefish444 card. Got the output plugin issues resolved mostly thanks to MichaelMc's svmem code. Many many thanks to Michael.
Phase one (proof-of-concept) is now complete, and yes, it plays full-HD 1920x1080 videos in a 1920x1080x32bpp buffer with VLC_CODEC_RGB32 chroma, having a cpu usage of "only" 60% on this quad-core system.
I must say vlc does an absolutely excellent job on resizing and chroma-converting, so doing any conversion on the side of my BlueMotion project will not be necessary. I wish to thank the entire videolan team for this excellent player.
Now I can move to phase two, using the vlclib from within my BlueMotion software to gain control over vlcplayer from there. For this test, I just ran vlcplayer from the desktop.
After that I will have to improve playback quality with a triple-buffer scheme that also deals with interlacing correctly. (playing interlaced content "natively" without de-interlacing) And hope that pace decoding will somehow be possible for genlocked output. Both are necessary to reach 100% broadcast quality.
If this works, vlc may eventually become a playout device for studio usage.
and, if there is interest in it by other vlc users, I may even write a "direct" output plugin to the Bluefish series of cards, without the need for a second process using proprietary code. The Bluefish444 SDK itself however is not GNU and therefore cannot be included in the vlc contribs. Nevertheless, Windows and even Linux versions of this SDK are available for free. (see
http://www.bluefish444.com/support/oem/)
After finishing the video part comes audio output. Now i'm using the PC audio. The newest Bluefish (Epoch) cards have embedded SDI-audio capability, which would make extra audio equipment unnecessary.
And ultimately, who knows, doing capture as well (our Bluefish cards have an HD-SDI video input)