Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • gstreamer gstreamer
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 929
    • Issues 929
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 444
    • Merge requests 444
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GStreamerGStreamer
  • gstreamergstreamer
  • Issues
  • #386
Closed
Open
Issue created Apr 26, 2019 by J@jyaccess

GstPadProbeInfo seems to show inconsistent structure field length or location - gulong / crash

Hi, I started learning gstreamer a week ago by following the tutorial programs on gstreamer.freedesktop.org.

This exact program I basically copied and pasted the one from "Pipe Manipulation" tutorial sample program.

However, I always run into problem with pad_proble - not able to access the appropriate GstPadProbeInfo internal fields when receiving a signal back and crash my apps. I was using v1.15.90 and started the problem. Today I upgraded to 1.16, still problem.

So I dump the content of GstPadProbeInfo received in callback with this function,

Windows 10, X86_64, G_LITTLE_ENDIAN

See app16.txt for the dump() function codes & output.

app16.txt

Somehow the text cut & paste from Windows keep losing carriage-return, so I put the codes & output in app16.txt - easier to read.

Here is my humble view, please comment or correct me please,

  1. The pad_proble ID is 1, but application read 324d480 bcs id field is gulong (8-byte) in apps.

But from mem dump, the "1" is stored as uint (4-byte). So the gstreamer dll treats id field as uint?

  1. the data field

reference with gst_pad_probe_info_get_buffer (info) gives correct 324d480 (by dll)

reference with info->data, gives FFFFFFFFFFFFFFFF, by application, which is also kinda correct - 3rd 64-bits field

So is it possible that somehow the dll was compiled with sizeof(gulong) == 4 or something?

or, I need to #define memory compacting since this is a CISC processor?

The gstreamer I installed areapp16.txt

gstreamer-1.0-mingw-x86_64-1.16.0.msi

gstreamer-1.0-devel-mingw-x86_64-1.16.0.msi

earlier was

gstreamer-1.0-mingw-x86_64-1.15.90.msi

Thanks,

p.s. I closed the #385, bcs the posted text keep getting condensed.

Assignee
Assign to
Time tracking