The MASM Forum

General => The Laboratory => Topic started by: guga on July 16, 2024, 02:51:50 AM

Title: LibwebpDemux testing
Post by: guga on July 16, 2024, 02:51:50 AM
Ok, guys

I´m porting the libwebp library to RosAsm syntax. So far it seems to be working. Just missing to finish a couple of more exported functions, before making further tests. (Didn´t tested all the exported functions i made so far, so dunno, if it will crash is some of them yet)

Since this is a temporary test, i named the library as "Mylibwebpdemux.dll". When i finishes it i´ll rename it back to the proper name.

The goal is not only fix the webpdemux exported functions in the original Api, but make it work not too much dependent on libwebp.dll (Which also, maybe i´ll port this in the future as well.

In order to make it work better, once i´ll fix the other exported functions, i´ll focus on the dependent exports used from libwebp.dll, such as WebPGetFeaturesInternal.

From libwebp library, the demuxer uses a few of them, such as:

        WebPInitDecoderConfigInternal
        WebPDecode
        WebPSafeCalloc
        WebPSafeMalloc
        WebPSafeFree
        WebPDecode
        WebPGetFeaturesInternal
        VP8LCheckSignature
        VP8CheckSignature
        VP8GetInfo
        VP8LGetInfo
        WebPFreeDecBuffer
        WebPCopyPlane

Many of them i also fixed it and inserted inside my version of libwebpdemux.dll. The library itself (libwebp and libwebpdmux) seems to be robust, but seems to has some flaws in memory leaking and not releasing the full allocated memory. Not to mention that some functions do nothing at all (such as: WebPDemuxReleaseChunkIterator, WebPDemuxReleaseIterator)
Title: Re: LibwebpDemux testing
Post by: guga on July 16, 2024, 03:04:43 AM
Btw....if someone wants to give a test on the original libwebpdemux.dll i used to create the RosAsm version, here it is
Title: Re: LibwebpDemux testing
Post by: guga on July 20, 2024, 01:43:38 PM
New version. Can someone test this for me and see if it crashes ? If it do, please send me also the image so i can see what´s wrong.

Btw, it is expected to work for animated webp as well.