BitBasher
28th November 2007, 20:18
I have a console app (not a win32 app) that processes AVI files. I am trying to get the name of the video decompressor, using code similar to this:
HIC hIC = ICOpen( ICTYPE_VIDEO, VideoStreamInfo.fccHandler, /*ICMODE_DECOMPRESS*/ICMODE_QUERY );
if ( hIC )
{
ICINFO ICI;
if ( ICGetInfo(hIC,&ICI,sizeof(ICI)) >= sizeof(ICI) )
WideCharToMultiByte( GetConsoleOutputCP(), 0, ICI.szDescription, -1, szVideoCodec, sizeof(szVideoCodec), NULL, NULL );
ICClose( hIC );
}
Note that ICOpen works with either ICMODE_DECOMPRESS or ICMODE_QUERY.
Now here's the rub. During the call to ICGetInfo(), stdout get a SPEW of about 50 to 70 lines saying:
Licensestate disabling
My fccHandler is "divx" so this code would be talking to the DIVX decompressor.
I assume that most programs wouldn't see this cuz they're windows apps and typically stdout writes get tossed into the bit bucket.
After a bit of investigating I can see the string "Licensestate %sabling" in divx.dll memory, and the display of this seems to be related to an internal string, "enable_feedback".
I need a way to control the divx.dll so it does NOT spew debugging information to stdout - especially since divx.dll is a retail release - it shouldn't be writing ANYTHING to stdout.
Is there a way (registry setting, API call, etc) for me to get divx to stop writing to stdout?
Is this a bug in DIVX 6.7 (that's the one I'm using)? I think the default should be for it to NOT write to stdout.
Thanks very much!
Bit.
HIC hIC = ICOpen( ICTYPE_VIDEO, VideoStreamInfo.fccHandler, /*ICMODE_DECOMPRESS*/ICMODE_QUERY );
if ( hIC )
{
ICINFO ICI;
if ( ICGetInfo(hIC,&ICI,sizeof(ICI)) >= sizeof(ICI) )
WideCharToMultiByte( GetConsoleOutputCP(), 0, ICI.szDescription, -1, szVideoCodec, sizeof(szVideoCodec), NULL, NULL );
ICClose( hIC );
}
Note that ICOpen works with either ICMODE_DECOMPRESS or ICMODE_QUERY.
Now here's the rub. During the call to ICGetInfo(), stdout get a SPEW of about 50 to 70 lines saying:
Licensestate disabling
My fccHandler is "divx" so this code would be talking to the DIVX decompressor.
I assume that most programs wouldn't see this cuz they're windows apps and typically stdout writes get tossed into the bit bucket.
After a bit of investigating I can see the string "Licensestate %sabling" in divx.dll memory, and the display of this seems to be related to an internal string, "enable_feedback".
I need a way to control the divx.dll so it does NOT spew debugging information to stdout - especially since divx.dll is a retail release - it shouldn't be writing ANYTHING to stdout.
Is there a way (registry setting, API call, etc) for me to get divx to stop writing to stdout?
Is this a bug in DIVX 6.7 (that's the one I'm using)? I think the default should be for it to NOT write to stdout.
Thanks very much!
Bit.