Phyz
16th October 2004, 12:48
I believe that I have found a bug in at least the latest XviD, V1.02. (Koepi)
To replicate (requires the use of Graphedit)
Drop an XviD avi file into graphedit
Delete the avi splitter filter.
Reconnect the outpin pin of the avi source filter to XviD's input pin. This will add the avi splitter back in the graph.
Click play button, run for cover...
Do the same kind of thing with a divx, mpg etc, no crashing.
Now technically,
Call ConnectDirect or QueryAccept between XviD and a filter that XviD doesn't accept the input from and XviD will release xvidcore.dll from memory. Then when you reconnect and start decoding you can't because the decoder isn't there anymore!
The problem is in CXvidDecoder.cpp in the dshow\src folder the function CheckInputType has called CloseLib because a media type that XviD doesn't handle was found. Maybe when it does find a match this function should check to see if the dll is loaded and load it if necessary.
Verified as still present in the latest XviD source download 4th Oct 04.
Also reported here
http://edu.bnhof.de/pipermail/xvid-devel/2004-August/004499.html
To replicate (requires the use of Graphedit)
Drop an XviD avi file into graphedit
Delete the avi splitter filter.
Reconnect the outpin pin of the avi source filter to XviD's input pin. This will add the avi splitter back in the graph.
Click play button, run for cover...
Do the same kind of thing with a divx, mpg etc, no crashing.
Now technically,
Call ConnectDirect or QueryAccept between XviD and a filter that XviD doesn't accept the input from and XviD will release xvidcore.dll from memory. Then when you reconnect and start decoding you can't because the decoder isn't there anymore!
The problem is in CXvidDecoder.cpp in the dshow\src folder the function CheckInputType has called CloseLib because a media type that XviD doesn't handle was found. Maybe when it does find a match this function should check to see if the dll is loaded and load it if necessary.
Verified as still present in the latest XviD source download 4th Oct 04.
Also reported here
http://edu.bnhof.de/pipermail/xvid-devel/2004-August/004499.html