[MPlayer-cygwin] Fast CoreAVC DShow H264 decoder - Need help
Stefan Gürtler
helfmir at surfeu.de
Tue Jan 17 17:26:22 CET 2006
John Brown schrieb:
>> I was refering to the error code (r=0x51a3e10) in the Warning
>> Warning: DS_Filter() could not open DirectShow DLL.
>> (DLL=CoreAVCDecoder.ax, r=0x51a3e10)
>
>
> I understood. What I meant to say was that since LoadLibrary failed, the
> result variable would be unintialized, so that r=0x51a3e10 does not mean
> anything.
Only strange thig is, where does the value come from? It does not look
like a radom value to me. But i do not know the default value gcc will
give to an (uninitialized) local variable of the type HRESULT. MSDN does
not tell me the header to look for the definition fo HRESULT.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemexceptionclasshresulttopic.asp
I have spent the last 1 1/2 years coding in Java, most of my limited
c-knowledge is gone.
>
>
> Apparently, the code does not append the DLL name to the codecsdir, at
> least in the case of DirectShow codecs. If that is so, then it should be
> OK to specify the absolute path in codecs.conf, or you can add your
> codecs directory to your %PATH%
>
>> --with-codecsdir=/some/ablsolut/path.
>
> You mentioned mingw before. If you are using mingw, why are you using a
> Unix path?
I am using MinGW for compiling and MSys as small POSIX-environment. One
can do more things in MSys bash than in MS cmd. Unless you spezify only
relativ paths in ./confiuger, e.g. for the date-dir or codecs-dir, MinGW
builds will try to use standard paths known from unix/linux/cygwin etc,
too, when started in MSys bash. Have a look e.g. at the paths, where
MinGW-compiled mplayer looks for codecs.conf
mplayer -v
Stefan at SAGARA /opt/mplayer_coreavc/bin
$ ./mplayer.exe -v
MPlayer dev-CVS-060116-18:40-3.4.4 (C) 2000-2006 MPlayer Team
CPU: Intel Pentium M Dothan (Family: 6, Stepping: 8)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 0 SSE2: 0
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
get_path('codecs.conf') ->
'C:/Programme/msys/1.0/home/Stefan/mplayer/codecs.conf
...
>
>> New /odl error code r=0x80040111. Looks like I have to work on the
>> GUIDs, finally.
>>
> I think you reported this error before. To find it in winerror.h, you
> may have to convert it to decimal. The relevant error values are stored
> as decimal in my winerror.h at home, while at work, they are in hex. MS
> Calc will treat this number as an unsigned integer. If you need a signed
> result, the easiest way is to write a small program with:
>
> printf("%i\n", (int)0x80040111 );
>
> Your error is CLASS_E_CLASSNOTAVAILABLE
>
Yes, you are right. In the beginning, I spezifiyed no guids at all,
later on the wrong once from VSSH
-> In both cases I get a CLASS_E_CLASSNOTAVAILABLE.
After putting the correckt guids in codecs.conf (see post from comp),
the error code changed once more.
ERROR: Could not open required DirectShow codec CoreAVCDecoder.ax.
Warning: DS_Filter() source format is not accepted.
(DLL=CoreAVCDecoder.ax, r=0x1)
There we are stuck right now.
Stefan
More information about the MPlayer-cygwin
mailing list