Skip to content

GigE Vision (GVSP) does not read last byte of Ethernet payload #193

@angelo0027

Description

@angelo0027

Python version

3.7.4 (default, Aug 9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)]

Platform information

Windows-10-10.0.18362-SP0

Numpy version

1.19.1

mdfreader version

4.1

Description

I'm reading a camera image log via GigE Vision, GVSP protocol.
In filling my image with pixels, there is a diagonal shift every 2 rows. The image resolution is 4112x900. As you can see in the attached screenshot, the declared length of every message is 8972, therefore one message fills little more than two rows in the final image (8972-8224 = 748 px).
The actual length of the GVSP message is 8971 (one byte less than declared). The message should be of length 8972 (this is the correct length, I tested the same mdf with asammdf with the same resolution and the image is reconstructed correctly).
image

Further looking into the payload, there is actually one byte missing in the message from mdfreader that is present in asammdf:
image

And this causes the incorrect image reconstruction.

Is this a bug or does the file have to be loaded in another way? Currently I simply do:
mdf = mdfreader.Mdf(mdf_file)
The MDF version in the header is:
MDF 4.10

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions