Now really with the mentioned file.
# snapshot deb [check-valid-until=no] http://192.168.178.25:9999/debian-10-buster-snapshot.debian.org/ buster main deb-src [check-valid-until=no] http://192.168.178.25:9999/debian-10-buster-snapshot.debian.org/ buster main deb [check-valid-until=no] http://192.168.178.25:9999/debian-10-buster-debug-snapshot.debian.org/ buster-debug main
debian-10-buster-snapshot.debian.org https://snapshot.debian.org/archive/debian/20180927T000000Z/ debian-10-buster-debug-snapshot.debian.org https://snapshot.debian.org/archive/debian-debug/20180927T000000Z/ apt update apt dist-upgrade reboot apt-show-versions | grep No | awk '{print $1}' | xargs dpkg --purge apt autoremove apt install devscripts dpkg-dev xserver-xorg lightdm xterm openbox heaptrack heaptrack-gui valgrind htop mc clementine clementine-dbgsym libglib2.0-0-dbgsym libgstreamer1.0-0-dbg gstreamer1.0-plugins-base-dbg gstreamer1.0-plugins-good-dbg libgstreamer1.0-dev systemctl start lightdm mkdir gstreamer1.0/orig -p cd gstreamer1.0/orig apt source gstreamer1.0 cd ../.. mkdir gst-plugins-base1.0/orig -p cd gst-plugins-base1.0/orig apt source gst-plugins-base1.0 cd ../.. mkdir gst-plugins-good1.0/orig -p cd gst-plugins-good1.0/orig apt source gst-plugins-good1.0 cd ../.. ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" test.wav ffmpeg -i test.wav output-file.flac # Adding via Easytag /usr/share/digikam/about/images/body-background.jpg to output-file.flac, change picture type. for i in {1..30}; do cp output-file.flac output-file-$i.flac; done $ mediainfo sshfs/home/benutzer/output-file.flac General Complete name : sshfs/home/benutzer/output-file.flac Format : FLAC Format/Info : Free Lossless Audio Codec File size : 19.5 MiB Duration : 5 s 0 ms Overall bit rate mode : Variable Overall bit rate : 32.7 Mb/s Cover : Yes / Yes / Yes / Yes Cover description : body-background.jpg / body-background.jpg / body-background.jpg / body-background.jpg Cover type : Cover (back) / Publisher logo / Leaflet page Cover MIME : image/jpeg / image/jpeg / image/jpeg / image/jpeg Audio Format : FLAC Format/Info : Free Lossless Audio Codec Duration : 5 s 0 ms Bit rate mode : Variable Bit rate : 99.8 kb/s Channel(s) : 1 channel Channel layout : C Sampling rate : 44.1 kHz Bit depth : 16 bits Compression mode : Lossless Stream size : 60.9 KiB (0%) Writing library : Lavf58.12.100 export DISPLAY=:0 heaptrack /usr/bin/clementine heaptrack --analyze "/home/benutzer/heaptrack.clementine.10299.gz" heaptrack --analyze "/home/benutzer/heaptrack.clementine.10299.gz" | grep gst_tag_image_data_to_image_sample -B7 -A23 valgrind --leak-check=full --log-file=valgrind_$(date +%Y-%m-%d_%H-%M-%S).log /usr/bin/clementine # no allocation appears of the size of the image ... benutzer@debian:~$ heaptrack /usr/bin/clementine heaptrack output will be written to "/home/benutzer/heaptrack.clementine.23781.gz" starting application, this might take some time... __logging_message__01:10:37.833 WARN unknown libpng warning: iCCP: known incorrect sRGB profile libGL error: pci id for fd 51: 1234:1111, driver (null) libGL error: No driver found libGL error: failed to load driver: (null) 01:11:01.420 ERROR logging:57 Source ID 11 was not found when attempting to remove it __logging_message__01:11:05.076 WARN unknown QObject::killTimer: Timers cannot be stopped from another thread __logging_message__01:11:05.077 WARN unknown QObject::~QObject: Timers cannot be stopped from another thread heaptrack stats: allocations: 979074 leaked allocations: 23740 temporary allocations: 154858 Heaptrack finished! Now run the following to investigate the data: heaptrack --analyze "/home/benutzer/heaptrack.clementine.23781.gz" benutzer@debian:~$ heaptrack --analyze "/home/benutzer/heaptrack.clementine.23781.gz" | grep gst_tag_image_data_to_image_sample -B8 -A22 in /lib/x86_64-linux-gnu/libc.so.6 8.16MB consumed over 8 calls from: g_slice_alloc in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 0x7fddf446a9d0 in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 gst_buffer_new_allocate in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 gst_tag_image_data_to_image_sample in /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 gst_tag_list_add_id3_image in /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 0x7fdd94072aff in /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so 0x7fddf45976b1 in /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 0x7fddf4597d8e in /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 0x7fddf459b301 in /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 0x7fddf44e3f40 in /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 0x7fddf4663ad2 in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 0x7fddf4663134 in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 start_thread in /lib/x86_64-linux-gnu/libpthread.so.0 __clone in /lib/x86_64-linux-gnu/libc.so.6 456.25KB consumed over 96 calls from: ################### gdb -q --args /usr/bin/clementine Thread 26 "flacparse0:sink" hit Breakpoint 3, 0x00007ffff5de8640 in g_malloc () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (gdb) bt #0 0x00007ffff5de8640 in g_malloc () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #1 0x00007ffff5e005b3 in g_slice_alloc () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007ffff5c129d1 in ?? () from /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 #3 0x00007ffff5c1e0c2 in gst_buffer_new_allocate () from /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 #4 0x00007ffff6c66412 in gst_tag_image_data_to_image_sample () from /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 #5 0x00007ffff6c563b3 in gst_tag_list_add_id3_image () from /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 #6 0x00007fffc40e8b00 in ?? () from /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so #7 0x00007ffff5d3f6b2 in ?? () from /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 #8 0x00007ffff5d3fd8f in ?? () from /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 #9 0x00007ffff5d43302 in ?? () from /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 #10 0x00007ffff5c8bf41 in ?? () from /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 #11 0x00007ffff5e0bad3 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #12 0x00007ffff5e0b135 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #13 0x00007ffff61aff2a in start_thread (arg=0x7fff89ffb700) at pthread_create.c:463 #14 0x00007ffff3f0eedf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 26 "flacparse0:sink" hit Breakpoint 3, g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 95 ../../../../glib/gmem.c: Datei oder Verzeichnis nicht gefunden. (gdb) bt #0 g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 #1 0x00007ffff5e005b3 in g_slice_alloc (mem_size=mem_size@entry=4079355) at ../../../../glib/gslice.c:1024 #2 0x00007ffff5c129d1 in _sysmem_new_block (flags=(unknown: 0), maxsize=4079211, align=7, offset=0, size=4079204) at gstallocator.c:417 #3 0x00007ffff5c1e0c2 in gst_buffer_new_allocate (allocator=allocator@entry=0x0, size=size@entry=4079204, params=params@entry=0x0) at gstbuffer.c:839 #4 0x00007ffff6c66412 in gst_tag_image_data_to_image_sample (image_data=0x7fff640380d1 "\377\330\377", <incomplete sequence \340>, image_data_len=4079203, image_type=GST_TAG_IMAGE_TYPE_BACK_COVER) at tags.c:528 #5 0x00007ffff6c563b3 in gst_tag_list_add_id3_image (tag_list=0x7fff64004680, image_data=<optimized out>, image_data_len=image_data_len@entry=4079203, id3_picture_type=<optimized out>) at gstid3tag.c:379 #6 0x00007fffc40e8b00 in gst_flac_parse_handle_picture (buffer=0x7fff6c02f660, flacparse=0x7fff6c0475b0) at /usr/include/gstreamer-1.0/gst/base/gstbytereader.h:651 #7 gst_flac_parse_handle_block_type (sbuffer=0x7fff6c02f660, type=6, flacparse=0x7fff6c0475b0) at gstflacparse.c:1520 #8 gst_flac_parse_parse_frame (frame=0x7fff64004630, frame=0x7fff64004630, size=4079268, parse=0x7fff6c0475b0) at gstflacparse.c:1574 #9 gst_flac_parse_handle_frame (parse=0x7fff6c0475b0, frame=0x7fff64004630, skipsize=<optimized out>) at gstflacparse.c:870 #10 0x00007ffff5d3f6b2 in gst_base_parse_handle_buffer (parse=parse@entry=0x7fff6c0475b0, buffer=<optimized out>, skip=skip@entry=0x7fff89ffa75c, flushed=flushed@entry=0x7fff89ffa758) at gstbaseparse.c:2160 #11 0x00007ffff5d3fd8f in gst_base_parse_scan_frame (parse=parse@entry=0x7fff6c0475b0, klass=<optimized out>) at gstbaseparse.c:3464 #12 0x00007ffff5d43302 in gst_base_parse_loop (pad=<optimized out>) at gstbaseparse.c:3543 #13 0x00007ffff5c8bf41 in gst_task_func (task=0x7fff78030830) at gsttask.c:332 #14 0x00007ffff5e0bad3 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../../glib/gthreadpool.c:307 #15 0x00007ffff5e0b135 in g_thread_proxy (data=0x7fff6c0430f0) at ../../../../glib/gthread.c:784 #16 0x00007ffff61aff2a in start_thread (arg=0x7fff89ffb700) at pthread_create.c:463 #17 0x00007ffff3f0eedf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 (gdb) up #5 0x00007ffff6c563b3 in gst_tag_list_add_id3_image (tag_list=0x7fff64004680, image_data=<optimized out>, image_data_len=image_data_len@entry=4079203, id3_picture_type=<optimized out>) at gstid3tag.c:379 379 image = gst_tag_image_data_to_image_sample (image_data, image_data_len, (gdb) list 337,388 337 /** 338 * gst_tag_list_add_id3_image: 339 * @tag_list: a tag list 340 * @image_data: (array length=image_data_len): the (encoded) image 341 * @image_data_len: the length of the encoded image data at @image_data 342 * @id3_picture_type: picture type as per the ID3 (v2.4.0) specification for 343 * the APIC frame (0 = unknown/other) 344 * 345 * Adds an image from an ID3 APIC frame (or similar, such as used in FLAC) 346 * to the given tag list. Also see gst_tag_image_data_to_image_sample() for 347 * more information on image tags in GStreamer. 348 * 349 * Returns: %TRUE if the image was processed, otherwise %FALSE 350 */ 351 gboolean 352 gst_tag_list_add_id3_image (GstTagList * tag_list, const guint8 * image_data, 353 guint image_data_len, guint id3_picture_type) 354 { 355 GstTagImageType tag_image_type; 356 const gchar *tag_name; 357 GstSample *image; 358 359 g_return_val_if_fail (GST_IS_TAG_LIST (tag_list), FALSE); 360 g_return_val_if_fail (image_data != NULL, FALSE); 361 g_return_val_if_fail (image_data_len > 0, FALSE); 362 363 if (id3_picture_type == 0x01 || id3_picture_type == 0x02) { 364 /* file icon for preview. Don't add image-type to caps, since there 365 * is only supposed to be one of these, and the type is already indicated 366 * via the special tag */ 367 tag_name = GST_TAG_PREVIEW_IMAGE; 368 tag_image_type = GST_TAG_IMAGE_TYPE_NONE; 369 } else { 370 tag_name = GST_TAG_IMAGE; 371 372 /* Remap the ID3v2 APIC type our ImageType enum */ 373 if (id3_picture_type >= 0x3 && id3_picture_type <= 0x14) 374 tag_image_type = (GstTagImageType) (id3_picture_type - 2); 375 else 376 tag_image_type = GST_TAG_IMAGE_TYPE_UNDEFINED; 377 } 378 379 image = gst_tag_image_data_to_image_sample (image_data, image_data_len, <<<<<<<<<<<<< 380 tag_image_type); 381 382 if (image == NULL) 383 return FALSE; 384 385 gst_tag_list_add (tag_list, GST_TAG_MERGE_APPEND, tag_name, image, NULL); 386 gst_sample_unref (image); 387 return TRUE; 388 } (gdb) up #6 0x00007fffc40e8b00 in gst_flac_parse_handle_picture (buffer=0x7fff6c02f660, flacparse=0x7fff6c0475b0) at /usr/include/gstreamer-1.0/gst/base/gstbytereader.h:651 651 return _gst_byte_reader_get_pos_unchecked (reader); (gdb) list gstflacparse.c:1105,1158 1105 static gboolean 1106 gst_flac_parse_handle_picture (GstFlacParse * flacparse, GstBuffer * buffer) 1107 { 1108 GstByteReader reader; 1109 GstMapInfo map; 1110 guint32 img_len = 0, img_type = 0; 1111 guint32 img_mimetype_len = 0, img_description_len = 0; 1112 1113 gst_buffer_map (buffer, &map, GST_MAP_READ); 1114 gst_byte_reader_init (&reader, map.data, map.size); 1115 1116 if (!gst_byte_reader_skip (&reader, 4)) 1117 goto error; 1118 1119 if (!gst_byte_reader_get_uint32_be (&reader, &img_type)) 1120 goto error; 1121 1122 if (!gst_byte_reader_get_uint32_be (&reader, &img_mimetype_len)) 1123 goto error; 1124 if (!gst_byte_reader_skip (&reader, img_mimetype_len)) 1125 goto error; 1126 1127 if (!gst_byte_reader_get_uint32_be (&reader, &img_description_len)) 1128 goto error; 1129 if (!gst_byte_reader_skip (&reader, img_description_len)) 1130 goto error; 1131 1132 if (!gst_byte_reader_skip (&reader, 4 * 4)) 1133 goto error; 1134 1135 if (!gst_byte_reader_get_uint32_be (&reader, &img_len)) 1136 goto error; 1137 1138 if (gst_byte_reader_get_pos (&reader) + img_len > map.size) 1139 goto error; 1140 1141 GST_INFO_OBJECT (flacparse, "Got image of %d bytes", img_len); 1142 1143 if (img_len > 0) { 1144 if (flacparse->tags == NULL) 1145 flacparse->tags = gst_tag_list_new_empty (); 1146 1147 gst_tag_list_add_id3_image (flacparse->tags, 1148 map.data + gst_byte_reader_get_pos (&reader), img_len, img_type); <<<<<<<<<<<< 1149 } 1150 1151 gst_buffer_unmap (buffer, &map); 1152 return TRUE; 1153 1154 error: 1155 GST_ERROR_OBJECT (flacparse, "Error reading data"); 1156 gst_buffer_unmap (buffer, &map); 1157 return FALSE; 1158 } (gdb) up #11 0x00007ffff5d3fd8f in gst_base_parse_scan_frame (parse=parse@entry=0x7fff6c0475b0, klass=<optimized out>) at gstbaseparse.c:3464 3464 ret = gst_base_parse_handle_buffer (parse, buffer, &skip, &flushed); (gdb) list 3406,3500 3406 static GstFlowReturn 3407 gst_base_parse_scan_frame (GstBaseParse * parse, GstBaseParseClass * klass) 3408 { 3409 GstBuffer *buffer; 3410 GstFlowReturn ret = GST_FLOW_OK; 3411 guint fsize, min_size; 3412 gint flushed = 0; 3413 gint skip = 0; 3414 3415 GST_LOG_OBJECT (parse, "scanning for frame at offset %" G_GUINT64_FORMAT 3416 " (%#" G_GINT64_MODIFIER "x)", parse->priv->offset, parse->priv->offset); 3417 3418 /* let's make this efficient for all subclass once and for all; 3419 * maybe it does not need this much, but in the latter case, we know we are 3420 * in pull mode here and might as well try to read and supply more anyway 3421 * (so does the buffer caching mechanism) */ 3422 fsize = 64 * 1024; 3423 3424 while (TRUE) { 3425 min_size = MAX (parse->priv->min_frame_size, fsize); 3426 3427 GST_LOG_OBJECT (parse, "reading buffer size %u", min_size); 3428 3429 ret = gst_base_parse_pull_range (parse, min_size, &buffer); 3430 if (ret != GST_FLOW_OK) 3431 goto done; 3432 3433 /* if we got a short read, inform subclass we are draining leftover 3434 * and no more is to be expected */ 3435 if (gst_buffer_get_size (buffer) < min_size) { 3436 GST_LOG_OBJECT (parse, "... but did not get that; marked draining"); 3437 parse->priv->drain = TRUE; 3438 } 3439 3440 if (parse->priv->detecting) { 3441 ret = klass->detect (parse, buffer); 3442 if (ret == GST_FLOW_NOT_NEGOTIATED) { 3443 /* If draining we error out, otherwise request a buffer 3444 * with 64kb more */ 3445 if (parse->priv->drain) { 3446 gst_buffer_unref (buffer); 3447 GST_ERROR_OBJECT (parse, "Failed to detect format but draining"); 3448 return GST_FLOW_ERROR; 3449 } else { 3450 fsize += 64 * 1024; 3451 gst_buffer_unref (buffer); 3452 continue; 3453 } 3454 } else if (ret != GST_FLOW_OK) { 3455 gst_buffer_unref (buffer); 3456 GST_ERROR_OBJECT (parse, "detect() returned %s", 3457 gst_flow_get_name (ret)); 3458 return ret; 3459 } 3460 3461 /* Else handle this buffer normally */ 3462 } 3463 3464 ret = gst_base_parse_handle_buffer (parse, buffer, &skip, &flushed); <<<<<<<<<<<<<<< 3465 if (ret != GST_FLOW_OK) 3466 break; 3467 3468 /* If a large amount of data was requested to be skipped, _handle_buffer 3469 might have set the priv->skip flag to an extra amount on top of skip. 3470 In pull mode, we can just pull from the new offset directly. */ 3471 parse->priv->offset += parse->priv->skip; 3472 parse->priv->skip = 0; 3473 3474 /* something flushed means something happened, 3475 * and we should bail out of this loop so as not to occupy 3476 * the task thread indefinitely */ 3477 if (flushed) { 3478 GST_LOG_OBJECT (parse, "frame finished, breaking loop"); 3479 break; 3480 } 3481 /* nothing flushed, no skip and draining, so nothing left to do */ 3482 if (!skip && parse->priv->drain) { 3483 GST_LOG_OBJECT (parse, "no activity or result when draining; " 3484 "breaking loop and marking EOS"); 3485 ret = GST_FLOW_EOS; 3486 break; 3487 } 3488 /* otherwise, get some more data 3489 * note that is checked this does not happen indefinitely */ 3490 if (!skip) { 3491 GST_LOG_OBJECT (parse, "getting some more data"); 3492 fsize += 64 * 1024; 3493 } 3494 parse->priv->drain = FALSE; 3495 } 3496 3497 done: 3498 return ret; 3499 } (gdb) up #12 0x00007ffff5d43302 in gst_base_parse_loop (pad=<optimized out>) at gstbaseparse.c:3543 3543 ret = gst_base_parse_scan_frame (parse, klass); (gdb) list 3501,3625 3501 /* Loop that is used in pull mode to retrieve data from upstream */ 3502 static void 3503 gst_base_parse_loop (GstPad * pad) 3504 { 3505 GstBaseParse *parse; 3506 GstBaseParseClass *klass; 3507 GstFlowReturn ret = GST_FLOW_OK; 3508 3509 parse = GST_BASE_PARSE (gst_pad_get_parent (pad)); 3510 klass = GST_BASE_PARSE_GET_CLASS (parse); 3511 3512 GST_LOG_OBJECT (parse, "Entering parse loop"); 3513 3514 if (G_UNLIKELY (parse->priv->push_stream_start)) { 3515 gchar *stream_id; 3516 GstEvent *event; 3517 3518 stream_id = 3519 gst_pad_create_stream_id (parse->srcpad, GST_ELEMENT_CAST (parse), 3520 NULL); 3521 3522 event = gst_event_new_stream_start (stream_id); 3523 gst_event_set_group_id (event, gst_util_group_id_next ()); 3524 3525 GST_DEBUG_OBJECT (parse, "Pushing STREAM_START"); 3526 gst_pad_push_event (parse->srcpad, event); 3527 parse->priv->push_stream_start = FALSE; 3528 g_free (stream_id); 3529 } 3530 3531 /* reverse playback: 3532 * first fragment (closest to stop time) is handled normally below, 3533 * then we pull in fragments going backwards */ 3534 if (parse->segment.rate < 0.0) { 3535 /* check if we jumped back to a previous fragment, 3536 * which is a post-first fragment */ 3537 if (parse->priv->offset < 0) { 3538 ret = gst_base_parse_handle_previous_fragment (parse); 3539 goto done; 3540 } 3541 } 3542 3543 ret = gst_base_parse_scan_frame (parse, klass); <<<<<<<<<<<<<< 3544 3545 /* eat expected eos signalling past segment in reverse playback */ 3546 if (parse->segment.rate < 0.0 && ret == GST_FLOW_EOS && 3547 parse->segment.position >= parse->segment.stop) { 3548 GST_DEBUG_OBJECT (parse, "downstream has reached end of segment"); 3549 /* push what was accumulated during loop run */ 3550 gst_base_parse_finish_fragment (parse, FALSE); 3551 /* force previous fragment */ 3552 parse->priv->offset = -1; 3553 goto eos; 3554 } 3555 3556 if (ret != GST_FLOW_OK) 3557 goto done; 3558 3559 done: 3560 if (ret == GST_FLOW_EOS) 3561 goto eos; 3562 else if (ret != GST_FLOW_OK) 3563 goto pause; 3564 3565 gst_object_unref (parse); 3566 return; 3567 3568 /* ERRORS */ 3569 eos: 3570 { 3571 ret = GST_FLOW_EOS; 3572 GST_DEBUG_OBJECT (parse, "eos"); 3573 /* fall-through */ 3574 } 3575 pause: 3576 { 3577 gboolean push_eos = FALSE; 3578 3579 GST_DEBUG_OBJECT (parse, "pausing task, reason %s", 3580 gst_flow_get_name (ret)); 3581 gst_pad_pause_task (parse->sinkpad); 3582 3583 if (ret == GST_FLOW_EOS) { 3584 /* handle end-of-stream/segment */ 3585 if (parse->segment.flags & GST_SEGMENT_FLAG_SEGMENT) { 3586 gint64 stop; 3587 3588 if ((stop = parse->segment.stop) == -1) 3589 stop = parse->segment.duration; 3590 3591 GST_DEBUG_OBJECT (parse, "sending segment_done"); 3592 3593 gst_element_post_message 3594 (GST_ELEMENT_CAST (parse), 3595 gst_message_new_segment_done (GST_OBJECT_CAST (parse), 3596 GST_FORMAT_TIME, stop)); 3597 gst_pad_push_event (parse->srcpad, 3598 gst_event_new_segment_done (GST_FORMAT_TIME, stop)); 3599 } else { 3600 /* If we STILL have zero frames processed, fire an error */ 3601 if (parse->priv->framecount == 0) { 3602 GST_ELEMENT_ERROR (parse, STREAM, WRONG_TYPE, 3603 ("No valid frames found before end of stream"), (NULL)); 3604 } 3605 push_eos = TRUE; 3606 } 3607 } else if (ret == GST_FLOW_NOT_LINKED || ret < GST_FLOW_EOS) { 3608 /* for fatal errors we post an error message, wrong-state is 3609 * not fatal because it happens due to flushes and only means 3610 * that we should stop now. */ 3611 GST_ELEMENT_FLOW_ERROR (parse, ret); 3612 push_eos = TRUE; 3613 } 3614 if (push_eos) { 3615 if (parse->priv->estimated_duration <= 0) { 3616 gst_base_parse_update_duration (parse); 3617 } 3618 /* Push pending events, including SEGMENT events */ 3619 gst_base_parse_push_pending_events (parse); 3620 3621 gst_pad_push_event (parse->srcpad, gst_event_new_eos ()); 3622 } 3623 gst_object_unref (parse); 3624 } 3625 } ############## benutzer@debian:~$ gdb -q --args /usr/bin/clementine Reading symbols from /usr/bin/clementine...Reading symbols from /usr/lib/debug/.build-id/c2/394472e5ee2310bec8fdb58e9b561d9577da05.debug...done. done. (gdb) set width 0 (gdb) set pagination off (gdb) directory /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst Source directories searched: /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) directory /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base Source directories searched: /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) directory /home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag Source directories searched: /home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) directory /home/benutzer/gst-plugins-good1.0/orig/gst-plugins-good1.0-1.14.3/gst/audioparsers Source directories searched: /home/benutzer/gst-plugins-good1.0/orig/gst-plugins-good1.0-1.14.3/gst/audioparsers:/home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) b gst_tag_image_data_to_image_sample Function "gst_tag_image_data_to_image_sample" not defined. Make breakpoint pending on future shared library load? (y or [n]) y Breakpoint 1 (gst_tag_image_data_to_image_sample) pending. (gdb) run Starting program: /usr/bin/clementine [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7fffe4b4f700 (LWP 26915)] [New Thread 0x7fffdffff700 (LWP 26916)] [New Thread 0x7fffdf7fe700 (LWP 26917)] [New Thread 0x7fffde8e4700 (LWP 26918)] [New Thread 0x7fffde0e3700 (LWP 26919)] [New Thread 0x7fffdd8e2700 (LWP 26920)] [New Thread 0x7fffdcdbf700 (LWP 26921)] [New Thread 0x7fffc7fff700 (LWP 26922)] [New Thread 0x7fffc77fe700 (LWP 26923)] __logging_message__01:39:12.010 WARN unknown libpng warning: iCCP: known incorrect sRGB profile [New Thread 0x7fffc6ffd700 (LWP 26938)] [New Thread 0x7fffc67fc700 (LWP 26939)] [New Thread 0x7fffc5ffb700 (LWP 26940)] [New Thread 0x7fffc57fa700 (LWP 26941)] [New Thread 0x7fffc4ff9700 (LWP 26942)] [New Thread 0x7fffa3fff700 (LWP 26943)] libGL error: pci id for fd 57: 1234:1111, driver (null) libGL error: No driver found libGL error: failed to load driver: (null) [New Thread 0x7fffa266e700 (LWP 26945)] [New Thread 0x7fffa1e6d700 (LWP 26946)] [New Thread 0x7fffa166c700 (LWP 26947)] [New Thread 0x7fffa0e6b700 (LWP 26948)] [New Thread 0x7fff8bfff700 (LWP 26949)] [New Thread 0x7fff8b7fe700 (LWP 26950)] [New Thread 0x7fff8affd700 (LWP 26951)] [Thread 0x7fff8b7fe700 (LWP 26950) exited] [New Thread 0x7fff8b7fe700 (LWP 26952)] [New Thread 0x7fff8a7fc700 (LWP 26953)] [Thread 0x7fff8a7fc700 (LWP 26953) exited] [New Thread 0x7fffc40b5700 (LWP 26954)] [Thread 0x7fffc40b5700 (LWP 26954) exited] [New Thread 0x7fff8a7fc700 (LWP 26955)] [New Thread 0x7fff89ffb700 (LWP 26956)] [New Thread 0x7fff897fa700 (LWP 26957)] [New Thread 0x7fff88ff9700 (LWP 26958)] [New Thread 0x7fff737e1700 (LWP 26959)] [Switching to Thread 0x7fff737e1700 (LWP 26959)] Thread 31 "task4" hit Breakpoint 1, gst_tag_image_data_to_image_sample (image_data=0x7fff600380d1 "\377\330\377", <incomplete sequence \340>, image_data_len=4079203, image_type=GST_TAG_IMAGE_TYPE_BACK_COVER) at tags.c:513 513 { (gdb) bt #0 0x00007ffff6c61350 in gst_tag_image_data_to_image_sample (image_data=0x7fff600380d1 "\377\330\377", <incomplete sequence \340>, image_data_len=4079203, image_type=GST_TAG_IMAGE_TYPE_BACK_COVER) at tags.c:513 #1 0x00007ffff6c513b3 in gst_tag_list_add_id3_image (tag_list=0x7fff60003140, image_data=<optimized out>, image_data_len=image_data_len@entry=4079203, id3_picture_type=<optimized out>) at gstid3tag.c:379 #2 0x00007fffa0065b00 in gst_flac_parse_handle_picture (buffer=0x7fff5c02f6d0, flacparse=0x7fff5c049d90 [GstFlacParse]) at /usr/include/gstreamer-1.0/gst/base/gstbytereader.h:651 #3 0x00007fffa0065b00 in gst_flac_parse_handle_block_type (sbuffer=0x7fff5c02f6d0, type=6, flacparse=0x7fff5c049d90 [GstFlacParse]) at gstflacparse.c:1520 #4 0x00007fffa0065b00 in gst_flac_parse_parse_frame (frame=0x7fff600030f0, frame=0x7fff600030f0, size=4079268, parse=0x7fff5c049d90 [GstFlacParse]) at gstflacparse.c:1574 #5 0x00007fffa0065b00 in gst_flac_parse_handle_frame (parse=0x7fff5c049d90 [GstFlacParse], frame=0x7fff600030f0, skipsize=<optimized out>) at gstflacparse.c:870 #6 0x00007ffff5d3a6b2 in gst_base_parse_handle_buffer (parse=parse@entry=0x7fff5c049d90 [GstFlacParse], buffer=<optimized out>, skip=skip@entry=0x7fff737e075c, flushed=flushed@entry=0x7fff737e0758) at gstbaseparse.c:2160 #7 0x00007ffff5d3ad8f in gst_base_parse_scan_frame (parse=parse@entry=0x7fff5c049d90 [GstFlacParse], klass=<optimized out>) at gstbaseparse.c:3464 #8 0x00007ffff5d3e302 in gst_base_parse_loop (pad=<optimized out>) at gstbaseparse.c:3543 #9 0x00007ffff5c86f41 in gst_task_func (task=0x7fff78042830 [GstTask]) at gsttask.c:332 #10 0x00007ffff5e06ad3 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../../glib/gthreadpool.c:307 #11 0x00007ffff5e06135 in g_thread_proxy (data=0x7fff5c045b70) at ../../../../glib/gthread.c:784 #12 0x00007ffff61aaf2a in start_thread (arg=0x7fff737e1700) at pthread_create.c:463 #13 0x00007ffff3f09edf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 (gdb) b g_malloc Breakpoint 2 at 0x7ffff5de3640: file ../../../../glib/gmem.c, line 95. (gdb) cont Continuing. [Thread 0x7fffc6ffd700 (LWP 26938) exited] [Thread 0x7fffde8e4700 (LWP 26918) exited] [Thread 0x7fff8b7fe700 (LWP 26952) exited] [Thread 0x7fff8affd700 (LWP 26951) exited] Thread 31 "task4" hit Breakpoint 2, g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 95 ../../../../glib/gmem.c: Datei oder Verzeichnis nicht gefunden. (gdb) bt #0 0x00007ffff5de3640 in g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 #1 0x00007ffff5dfb5b3 in g_slice_alloc (mem_size=mem_size@entry=4079355) at ../../../../glib/gslice.c:1024 #2 0x00007ffff5c0d9d1 in _sysmem_new_block (flags=(unknown: 0), maxsize=4079211, align=7, offset=0, size=4079204) at gstallocator.c:417 #3 0x00007ffff5c190c2 in gst_buffer_new_allocate (allocator=allocator@entry=0x0, size=size@entry=4079204, params=params@entry=0x0) at gstbuffer.c:839 #4 0x00007ffff6c61412 in gst_tag_image_data_to_image_sample (image_data=0x7fff600380d1 "\377\330\377", <incomplete sequence \340>, image_data_len=4079203, image_type=GST_TAG_IMAGE_TYPE_BACK_COVER) at tags.c:528 #5 0x00007ffff6c513b3 in gst_tag_list_add_id3_image (tag_list=0x7fff60003140, image_data=<optimized out>, image_data_len=image_data_len@entry=4079203, id3_picture_type=<optimized out>) at gstid3tag.c:379 #6 0x00007fffa0065b00 in gst_flac_parse_handle_picture (buffer=0x7fff5c02f6d0, flacparse=0x7fff5c049d90 [GstFlacParse]) at /usr/include/gstreamer-1.0/gst/base/gstbytereader.h:651 #7 0x00007fffa0065b00 in gst_flac_parse_handle_block_type (sbuffer=0x7fff5c02f6d0, type=6, flacparse=0x7fff5c049d90 [GstFlacParse]) at gstflacparse.c:1520 #8 0x00007fffa0065b00 in gst_flac_parse_parse_frame (frame=0x7fff600030f0, frame=0x7fff600030f0, size=4079268, parse=0x7fff5c049d90 [GstFlacParse]) at gstflacparse.c:1574 #9 0x00007fffa0065b00 in gst_flac_parse_handle_frame (parse=0x7fff5c049d90 [GstFlacParse], frame=0x7fff600030f0, skipsize=<optimized out>) at gstflacparse.c:870 #10 0x00007ffff5d3a6b2 in gst_base_parse_handle_buffer (parse=parse@entry=0x7fff5c049d90 [GstFlacParse], buffer=<optimized out>, skip=skip@entry=0x7fff737e075c, flushed=flushed@entry=0x7fff737e0758) at gstbaseparse.c:2160 #11 0x00007ffff5d3ad8f in gst_base_parse_scan_frame (parse=parse@entry=0x7fff5c049d90 [GstFlacParse], klass=<optimized out>) at gstbaseparse.c:3464 #12 0x00007ffff5d3e302 in gst_base_parse_loop (pad=<optimized out>) at gstbaseparse.c:3543 #13 0x00007ffff5c86f41 in gst_task_func (task=0x7fff78042830 [GstTask]) at gsttask.c:332 #14 0x00007ffff5e06ad3 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../../glib/gthreadpool.c:307 #15 0x00007ffff5e06135 in g_thread_proxy (data=0x7fff5c045b70) at ../../../../glib/gthread.c:784 #16 0x00007ffff61aaf2a in start_thread (arg=0x7fff737e1700) at pthread_create.c:463 #17 0x00007ffff3f09edf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 ####################### benutzer@debian:~$ gdb -q --args /usr/bin/clementine Reading symbols from /usr/bin/clementine...Reading symbols from /usr/lib/debug/.build-id/c2/394472e5ee2310bec8fdb58e9b561d9577da05.debug...done. done. (gdb) set width 0 (gdb) set pagination off (gdb) directory /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst Source directories searched: /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) directory /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base Source directories searched: /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) directory /home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag Source directories searched: /home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) directory /home/benutzer/gst-plugins-good1.0/orig/gst-plugins-good1.0-1.14.3/gst/audioparsers Source directories searched: /home/benutzer/gst-plugins-good1.0/orig/gst-plugins-good1.0-1.14.3/gst/audioparsers:/home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base:/home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst:$cdir:$cwd (gdb) b gst_tag_image_data_to_image_sample Function "gst_tag_image_data_to_image_sample" not defined. Make breakpoint pending on future shared library load? (y or [n]) y Breakpoint 1 (gst_tag_image_data_to_image_sample) pending. (gdb) run Starting program: /usr/bin/clementine [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7fffe4b4f700 (LWP 26968)] [New Thread 0x7fffdffff700 (LWP 26969)] [New Thread 0x7fffdf7fe700 (LWP 26970)] [New Thread 0x7fffde8e4700 (LWP 26971)] [New Thread 0x7fffde0e3700 (LWP 26972)] [New Thread 0x7fffdd8e2700 (LWP 26973)] [New Thread 0x7fffdcdbf700 (LWP 26974)] [New Thread 0x7fffc7fff700 (LWP 26975)] [New Thread 0x7fffc77fe700 (LWP 26976)] __logging_message__01:44:22.920 WARN unknown libpng warning: iCCP: known incorrect sRGB profile [New Thread 0x7fffc6ffd700 (LWP 26991)] [New Thread 0x7fffc67fc700 (LWP 26992)] [New Thread 0x7fffc5ffb700 (LWP 26993)] [New Thread 0x7fffc57fa700 (LWP 26994)] [New Thread 0x7fffc4ff9700 (LWP 26995)] [New Thread 0x7fffa3fff700 (LWP 26996)] libGL error: pci id for fd 56: 1234:1111, driver (null) libGL error: No driver found libGL error: failed to load driver: (null) [New Thread 0x7fffa266e700 (LWP 26998)] [New Thread 0x7fffa1e6d700 (LWP 26999)] [New Thread 0x7fffa166c700 (LWP 27000)] [New Thread 0x7fffa0e6b700 (LWP 27001)] [New Thread 0x7fff8bfff700 (LWP 27002)] [New Thread 0x7fff8b7fe700 (LWP 27003)] [New Thread 0x7fff8affd700 (LWP 27004)] [Thread 0x7fff8b7fe700 (LWP 27003) exited] [New Thread 0x7fff8b7fe700 (LWP 27005)] [New Thread 0x7fff8a7fc700 (LWP 27006)] [Thread 0x7fff8a7fc700 (LWP 27006) exited] [New Thread 0x7fffc40b5700 (LWP 27007)] [Thread 0x7fffc40b5700 (LWP 27007) exited] [New Thread 0x7fff8a7fc700 (LWP 27008)] [New Thread 0x7fff89ffb700 (LWP 27009)] [New Thread 0x7fff897fa700 (LWP 27010)] [New Thread 0x7fff88ff9700 (LWP 27011)] [New Thread 0x7fff737e1700 (LWP 27012)] [Switching to Thread 0x7fff737e1700 (LWP 27012)] Thread 31 "task4" hit Breakpoint 1, gst_tag_image_data_to_image_sample (image_data=0x7fff600380d1 "\377\330\377", <incomplete sequence \340>, image_data_len=4079203, image_type=GST_TAG_IMAGE_TYPE_BACK_COVER) at tags.c:513 513 { (gdb) b g_malloc Breakpoint 2 at 0x7ffff5de3640: file ../../../../glib/gmem.c, line 95. (gdb) cont Continuing. [Thread 0x7fff8affd700 (LWP 27004) exited] [Thread 0x7fffc6ffd700 (LWP 26991) exited] Thread 31 "task4" hit Breakpoint 2, g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 95 ../../../../glib/gmem.c: Datei oder Verzeichnis nicht gefunden. (gdb) bt #0 0x00007ffff5de3640 in g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 #1 0x00007ffff5dfb5b3 in g_slice_alloc (mem_size=mem_size@entry=4079355) at ../../../../glib/gslice.c:1024 #2 0x00007ffff5c0d9d1 in _sysmem_new_block (flags=(unknown: 0), maxsize=4079211, align=7, offset=0, size=4079204) at gstallocator.c:417 #3 0x00007ffff5c190c2 in gst_buffer_new_allocate (allocator=allocator@entry=0x0, size=size@entry=4079204, params=params@entry=0x0) at gstbuffer.c:839 #4 0x00007ffff6c61412 in gst_tag_image_data_to_image_sample (image_data=0x7fff600380d1 "\377\330\377", <incomplete sequence \340>, image_data_len=4079203, image_type=GST_TAG_IMAGE_TYPE_BACK_COVER) at tags.c:528 #5 0x00007ffff6c513b3 in gst_tag_list_add_id3_image (tag_list=0x7fff60003140, image_data=<optimized out>, image_data_len=image_data_len@entry=4079203, id3_picture_type=<optimized out>) at gstid3tag.c:379 #6 0x00007fffa0065b00 in gst_flac_parse_handle_picture (buffer=0x7fff5c02f6d0, flacparse=0x7fff5c049af0 [GstFlacParse]) at /usr/include/gstreamer-1.0/gst/base/gstbytereader.h:651 #7 0x00007fffa0065b00 in gst_flac_parse_handle_block_type (sbuffer=0x7fff5c02f6d0, type=6, flacparse=0x7fff5c049af0 [GstFlacParse]) at gstflacparse.c:1520 #8 0x00007fffa0065b00 in gst_flac_parse_parse_frame (frame=0x7fff600030f0, frame=0x7fff600030f0, size=4079268, parse=0x7fff5c049af0 [GstFlacParse]) at gstflacparse.c:1574 #9 0x00007fffa0065b00 in gst_flac_parse_handle_frame (parse=0x7fff5c049af0 [GstFlacParse], frame=0x7fff600030f0, skipsize=<optimized out>) at gstflacparse.c:870 #10 0x00007ffff5d3a6b2 in gst_base_parse_handle_buffer (parse=parse@entry=0x7fff5c049af0 [GstFlacParse], buffer=<optimized out>, skip=skip@entry=0x7fff737e075c, flushed=flushed@entry=0x7fff737e0758) at gstbaseparse.c:2160 #11 0x00007ffff5d3ad8f in gst_base_parse_scan_frame (parse=parse@entry=0x7fff5c049af0 [GstFlacParse], klass=<optimized out>) at gstbaseparse.c:3464 #12 0x00007ffff5d3e302 in gst_base_parse_loop (pad=<optimized out>) at gstbaseparse.c:3543 #13 0x00007ffff5c86f41 in gst_task_func (task=0x7fff78042830 [GstTask]) at gsttask.c:332 #14 0x00007ffff5e06ad3 in g_thread_pool_thread_proxy (data=<optimized out>) at ../../../../glib/gthreadpool.c:307 #15 0x00007ffff5e06135 in g_thread_proxy (data=0x7fff5c045b70) at ../../../../glib/gthread.c:784 #16 0x00007ffff61aaf2a in start_thread (arg=0x7fff737e1700) at pthread_create.c:463 #17 0x00007ffff3f09edf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 (gdb) finish Run till exit from #0 g_malloc (n_bytes=n_bytes@entry=4079355) at ../../../../glib/gmem.c:95 [Thread 0x7fffde8e4700 (LWP 26971) exited] [Thread 0x7fff8b7fe700 (LWP 27005) exited] 0x00007ffff5dfb5b3 in g_slice_alloc (mem_size=mem_size@entry=4079355) at ../../../../glib/gslice.c:1024 1024 ../../../../glib/gslice.c: Datei oder Verzeichnis nicht gefunden. Value returned is $1 = (void *) 0x7fff6041bf50 (gdb) b g_free if mem==0x7fff6041bf50 Breakpoint 4 at 0x7ffff5de3720: file ../../../../glib/gmem.c, line 193. (gdb) disa 2 (gdb) disa 1 (gdb) cont Continuing. [New Thread 0x7fff8b7fe700 (LWP 27013)] 01:46:29.530 ERROR logging:57 Source ID 11 was not found when attempting to remove it [Switching to Thread 0x7fffe5924380 (LWP 26964)] Thread 1 "clementine" hit Breakpoint 4, g_free (mem=0x7fff6041bf50) at ../../../../glib/gmem.c:193 193 in ../../../../glib/gmem.c (gdb) bt #0 0x00007ffff5de3720 in g_free (mem=0x7fff6041bf50) at ../../../../glib/gmem.c:193 #1 0x00007ffff5c4bb88 in _gst_memory_free (mem=0x7fff6041bf50) at gstmemory.c:97 #2 0x00007ffff5c1794a in gst_memory_unref (memory=<optimized out>) at ../gst/gstmemory.h:345 #3 0x00007ffff5c1794a in _gst_buffer_free (buffer=0x7fff5c02fd30) at gstbuffer.c:749 #4 0x00007ffff5c76713 in gst_buffer_unref (buf=<optimized out>) at ../gst/gstbuffer.h:442 #5 0x00007ffff5c76713 in _gst_sample_free (sample=0x7fffd41290f0) at gstsample.c:82 #6 0x00007ffff5ee45e0 in g_value_unset (value=value@entry=0x7fff6c005b18) at ../../../../gobject/gvalue.c:275 #7 0x00007ffff5c79cdc in gst_structure_free (structure=0x7fffd41091a0) at gststructure.c:385 #8 0x00007ffff5c8149d in __gst_tag_list_free (list=0x7fffd411f9e0) at gsttaglist.c:720 #9 0x00007ffff5ee45e0 in g_value_unset (value=value@entry=0x7fff6c0042b8) at ../../../../gobject/gvalue.c:275 #10 0x00007ffff5c79cdc in gst_structure_free (structure=0x7fffd4120580) at gststructure.c:385 #11 0x00007ffff5c4746d in _gst_message_free (message=0x7fff78043590) at gstmessage.c:218 #12 0x00007ffff5dd9e5d in g_list_foreach (list=<optimized out>, list@entry=0x555556f4d340 = {...}, func=0x7ffff5c1eb60 <gst_message_unref>, user_data=user_data@entry=0x0) at ../../../../glib/glist.c:1013 #13 0x00007ffff5dd9e8b in g_list_free_full (list=0x555556f4d340 = {...}, free_func=<optimized out>) at ../../../../glib/glist.c:223 #14 0x00007ffff5c1fdaf in gst_bus_set_flushing (bus=<optimized out>, flushing=<optimized out>) at gstbus.c:478 #15 0x00007ffff5c5f3e5 in gst_pipeline_change_state (element=0x5555576de090 [GstPipeline], transition=<optimized out>) at gstpipeline.c:549 #16 0x00007ffff5c38eee in gst_element_change_state (element=element@entry=0x5555576de090 [GstPipeline], transition=GST_STATE_CHANGE_READY_TO_NULL) at gstelement.c:2952 #17 0x00007ffff5c398ee in gst_element_continue_state (element=element@entry=0x5555576de090 [GstPipeline], ret=ret@entry=GST_STATE_CHANGE_SUCCESS) at gstelement.c:2660 #18 0x00007ffff5c390d5 in gst_element_change_state (element=element@entry=0x5555576de090 [GstPipeline], transition=<optimized out>) at gstelement.c:2991 #19 0x00007ffff5c398ee in gst_element_continue_state (element=element@entry=0x5555576de090 [GstPipeline], ret=ret@entry=GST_STATE_CHANGE_SUCCESS) at gstelement.c:2660 #20 0x00007ffff5c390d5 in gst_element_change_state (element=element@entry=0x5555576de090 [GstPipeline], transition=transition@entry=GST_STATE_CHANGE_PLAYING_TO_PAUSED) at gstelement.c:2991 #21 0x00007ffff5c3960e in gst_element_set_state_func (element=0x5555576de090 [GstPipeline], state=GST_STATE_NULL) at gstelement.c:2906 #22 0x00005555558d3cd2 in GstEnginePipeline::~GstEnginePipeline() (this=0x555557178d30, __in_chrg=<optimized out>) at ./src/engines/gstenginepipeline.cpp:506 #23 0x00005555558d3e09 in GstEnginePipeline::~GstEnginePipeline() (this=0x555557178d30, __in_chrg=<optimized out>) at ./src/engines/gstenginepipeline.cpp:501 #24 0x00005555558c6792 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (this=0x5555573e0550) at /usr/include/c++/8/ext/atomicity.h:69 #25 0x00005555558c6792 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/8/bits/shared_ptr_base.h:706 #26 0x00005555558c6792 in std::__shared_ptr<GstEnginePipeline, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() (this=<optimized out>, __in_chrg=<optimized out>) at /usr/include/c++/8/bits/shared_ptr_base.h:1145 #27 0x00005555558c6792 in std::__shared_ptr<GstEnginePipeline, (__gnu_cxx::_Lock_policy)2>::reset() (this=0x55555680d778) at /usr/include/c++/8/bits/shared_ptr_base.h:1263 #28 0x00005555558c6792 in GstEngine::EndOfStreamReached(int, bool) (this=0x55555680d6c0, pipeline_id=<optimized out>, has_next_track=<optimized out>) at ./src/engines/gstengine.cpp:753 #29 0x0000555555ae8262 in GstEngine::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x55555680d6c0, _c=<optimized out>, _id=<optimized out>, _a=0x7fff64003ec0) at ./obj-x86_64-linux-gnu/src/engines/moc_gstengine.cpp:211 #30 0x00007ffff721a072 in QObject::event(QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #31 0x00007ffff4c864a1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #32 0x00007ffff4c8dae0 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 #33 0x00007ffff71f0579 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #34 0x00007ffff71f356b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #35 0x00007ffff7242c03 in () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #36 0x00007ffff5dddc3e in g_main_dispatch (context=0x55555677a3e0) at ../../../../glib/gmain.c:3182 #37 0x00007ffff5dddc3e in g_main_context_dispatch (context=context@entry=0x55555677a3e0) at ../../../../glib/gmain.c:3847 #38 0x00007ffff5ddded8 in g_main_context_iterate (context=context@entry=0x55555677a3e0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../../glib/gmain.c:3920 #39 0x00007ffff5dddf6c in g_main_context_iteration (context=0x55555677a3e0, may_block=1) at ../../../../glib/gmain.c:3981 #40 0x00007ffff7242223 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #41 0x00007fffe56d1e51 in () at /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #42 0x00007ffff71ef24b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #43 0x00007ffff71f73c2 in QCoreApplication::exec() () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #44 0x0000555555851d93 in main (argc=<optimized out>, argv=<optimized out>) at ./src/main.cpp:462 #45 0x00007ffff3e34b17 in __libc_start_main (main=0x555555851500 <main>, argc=1, argv=0x7fffffffe608, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe5f8) at ../csu/libc-start.c:310 #46 0x0000555555854e1a in _start () at ./src/main.cpp:478 ####################### gdb -q --args /usr/bin/clementine set width 0 set pagination off directory /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/gst directory /home/benutzer/gstreamer1.0/orig/gstreamer1.0-1.14.3/libs/gst/base directory /home/benutzer/gst-plugins-base1.0/orig/gst-plugins-base1.0-1.14.3/gst-libs/gst/tag directory /home/benutzer/gst-plugins-good1.0/orig/gst-plugins-good1.0-1.14.3/gst/audioparsers b gst_tag_image_data_to_image_sample y run b g_malloc cont bt