gdb: implement 'gst-dot' and 'gst-print' commands
This adds two custom gdb commands: 'gst-dot' creates dot files that a very close to what GST_DEBUG_BIN_TO_DOT_FILE() produces. Object properties and buffer content (e.g. codec-data in caps) are not available. 'gst-print' produces high-level information about GStreamer objects. This is currently limited to pads for GstElements and events for the pads. The output can look like this: (gdb) gst-print pad.object.parent GstMatroskaDemux (matroskademux0) { SinkPad (sink, pull) { } SrcPad (video_0, push) { events: stream-start: stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/001:1274058367 caps: video/x-theora width: 1920 height: 800 pixel-aspect-ratio: 1/1 framerate: 24/1 streamheader: < 0x5555557c7d30 [GstBuffer], 0x5555557c7e40 [GstBuffer], 0x7fffe00141d0 [GstBuffer] > segment: time rate: 1 tag: global container-format: Matroska } SrcPad (audio_0, push) { events: stream-start: stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/002:1551204875 caps: audio/mpeg mpegversion: 4 framed: true stream-format: raw codec_data: 0x7fffe0014500 [GstBuffer] level: 2 base-profile: lc profile: lc channels: 2 rate: 44100 segment: time rate: 1 tag: global container-format: Matroska tag: stream audio-codec: MPEG-4 AAC audio language-code: en } }
Status | Job ID | Name | Coverage | ||||||
---|---|---|---|---|---|---|---|---|---|
Preparation | |||||||||
passed |
#71120
|
gst indent |
00:00:31
|
|
|||||
passed |
#71119
|
manifest |
00:00:32
|
|
|||||
Build | |||||||||
passed |
#71121
|
build fedora x86_64 |
00:03:03
|
|
|||||
Test | |||||||||
passed |
#71122
|
check fedora |
00:15:04
|
|
|||||
Full Builds | |||||||||
passed |
#71123
|
build android arm64 api28 |
00:04:10
|
|
|||||
passed |
#71124
|
build cerbero fedora x86_64 |
00:06:23
|
|
|||||