[MPlayer-dev-eng] vdpau codec priority?
Uoti Urpala
uoti.urpala at pp1.inet.fi
Wed Sep 2 15:26:25 CEST 2009
On Wed, 2009-09-02 at 13:27 +0200, Reimar Döffinger wrote:
> On Wed, Sep 02, 2009 at 02:05:26PM +0300, Uoti Urpala wrote:
> > On Wed, 2009-09-02 at 12:46 +0200, Reimar Döffinger wrote:
> > > A proper solution is possible and was suggested, it depends on FFmpeg
> > > finally merging the vdpau and normal codecs and just select between them
> > > via the chosen colorspace.
> > > Unfortunately it seems everyone lost interest in cleaning up that
> > > particular mess on the FFmpeg side.
> >
> > Selecting via colorspace wouldn't help with the particular problem Carl
> > was talking about (VDP decoder creation failing because another process
> > on the machine is using it). The colorspace would have already been
> > negotiated by the time MPlayer notices that it can't actually create a
> > decoder for that colorspace. So you'd still have the same situation
> > where decoder creation fails and things have to be retried starting from
> > an earlier point. To avoid that you'd need something like reserving
> > resources at query_format stage.
>
> The decoder (with a dummy value for max_refs) can be created during query_format
> AFAICT, it still doesn't help a bit without the changes in FFmpeg.
> Also the first complaint was needing so many options (particularly that
> you need to know which codec the file uses), which definitely
> would be fixed with the FFmpeg changes.
You can use configuration like '-vc ffh264vdpau,ffvc1vdpau,' to try
those decoders first and then fall back to standard ones if they fail.
That works without needing to know in advance what codec the particular
file uses. And with that configuration reserving the VDPAU resources
during query_format _would_ help in the case where opening the decoder
apparently succeeds but then creating the VDPAU-level decoder fails
later when another decoder can't be tried any more (though I'm not sure
whether this makes it a good idea).
More information about the MPlayer-dev-eng
mailing list