[mythtv-users] New video renderers/Suggestions
blwalter at gmail.com
Tue Sep 25 17:16:06 UTC 2007
Mark Kendall wrote:
> On 9/25/07, Brian Walter <blwalter at gmail.com> wrote:
>> Trying to understand the new play back profiles (which I like the
>> concept of).
>> After a quick search, I don't find any information on say xv-blit renderer.
>> Is there a resource I can read/search/etc to get a handle on the
>> relative merits and weaknesses of the various renderers?
> As far as I'm aware, there is no documentation for playback profiles.
> In a nutshell (largely from memory, definitely incomplete and likely
> to be innacurate!):-
> - define a resolution/range of resoltions for which you would like a
> specific playback profile.
> - pick a decoder
> - select from software decoders (nuppeldecoder, ffmpeg, libmpeg2)
> or hardware assisted decoders (ivtv/pvr350, xvmc, mac, via-xvmc). Your
> choice is dependant on your hardware and will determine which
> renderers are available.
> - pick a renderer
> - for a typical Xorg setup with drivers installed, you'll be able
> to pick from:-
> - xlib - all scaling, colour conversion etc will be done in
> software. This should probably be your renderer of last resort (and
> the code assumes it is, if it has to fall back to something).
> - xshm - (slightly?) better than xlib and makes use of shared
> memory to speed up memory transfers.
> - xv-blit - this is the standard xvideo that most people will be
> familiar with. Colour conversion and scaling are handled by the gpu
> and colour/hue/contrast adjustments may be available (dependant on
> your graphics card and drivers)
> - xvmc-blit - xvmc that many people know and love. The gpu
> handles certain elements of the mpeg2 decoding process to lower cpu
> usage. There are implications for the onscreen display which is
> typically only rendered in grayscale.
> - xvmc-opengl - this takes advantage of a feature only available
> through the nvidia proprietry drivers. The partially decoded/xvmc
> frames are rendered directly into an openl window. The main advantage
> is that opengl can be used to render a colour osd at the resolution of
> the display.
> - opengl. The opengl framework is used to render the video. The
> gpu can be used to assist in colourspace conversion, scaling, osd
> rendering, displaying PiP and deinterlacing. At the moment, the
> advantages are; osd rendered at the screen resolution and a wider
> range of frame rate doubling deinterlacers. You will probably need a
> fairly recent graphics card to take advantage of all of these
> - other renderers are platform/hardware dependant:-
> - directfb - accesses the framebuffer directly where
> driver/hardware support is available. Some acceleration may be
> available (e.g. scaling)
> - ivtv - specific to users of PVR350s
> - directx - for a windows frontend...
> - quartz - mac related but I know nothing about these.
> - pick an osd rendering method
> - softblend - this is the standard approach where the osd is
> blended into the video frame in software. Main disadvantages are
> flickering when using a bob deinterlacer and osd is generated at the
> resolution of the video source.
> - chromakey/ia44blend - from memory both are specific to
> generating a colour osd when using xvmc (but I've never used them)
> - opengl. The various opengl osd renderers (which one depends on
> your video renderer) should all show the osd at the display resolution
> and shouldn't flicker when using bob.
> - then pick a primary and secondary deinterlacer (I won't go into
> those now - must do some work)
> Bear in mind that there is also an interaction between playback
> profiles and xrandr if you are using it (e.g. you might switch to a
> 1080i/p mode to play back 1080i/p mpeg2 material and use xvmc as the
> decoder/renderer combination at this resolution to assist with the
> extra decoding burden)
> Does that give you a start?
Definitely gives me a starting point - I like the options and
selection, and the ability to chose based on resolution. Just need a
clarification of the renderes:)
BTW - it has been my experience (note: only my experience, I've not
heard from others), that using openGL as the decoder leads to FF/RW
pausing after a few seconds - and our friend Prebuffering Pauses.
Again, thanks for the info
More information about the mythtv-users