From: Harm van der Heijden <harm@et...> - 2001-11-29 12:03:45
On Thu, Nov 29, 2001 at 08:54:31AM -0200, Miguel Freitas wrote:
> >I just compiled xine0.9.6. It works very well for .mpg and other
> >However, when I wanted to try a .wmv file. It seg fault claiming:
> >demux_asf: video format : Windows Media Video 7
> >video_decoder: using decoder >vfw (win32) video decoder<
> >w32codec: init Direct Show video codec...
> >Win32 LoadLibrary failed to load: wmvds32.ax, /usr/lib/win32/wmvds32.ax,
> >Could not open DirectShow DLL: wmvds32.ax
> This segfault is on my todo list... it's caused by a missing codec.
I have a general question on this subject; Is it possible for a decoder plugin
to gracefully refuse to decode a particular stream? It's possible to disable a
plugin in the init stage by returning NULL, but once we get to the decode_data
stage, I don't see how to do it.
Applications are the win32 decoder (when it finds out that the required codec
is missing or something goes wrong in the linking stage) and the divx4 plugin,
when it finds out that libdivxdecore is no good.
The easiest solution is to say that everything should be checked in the
init stage and the get_capabilities function should remove flags for codecs
that are found missing.
However, for all decoders that rely on external libs to do the actual decoding,
this solution is not perfect. There's always the possibility that you find out
in the decoding stage, via return values or whatever, that there's something
wrong and that this decoder is incapable of decoding the stream. It would be
nice if the plugin could then tell xine-core to stop playing (at least) and try
to find another decoder plugin (even better).
Is this already available? If not, would it be difficult to add?
Get latest updates about Open Source Projects, Conferences and News.