On 7/7/19, Ulf Zibis <ulf.zi...@gmx.de> wrote: > > Am 07.07.19 um 14:20 schrieb Ulf Zibis: >>> If you can, install and use valgrind to help you debug such problems. >> Good idea, I will do that ... guess it needs some time to understand how >> it works. > > I now also have tried valgrind. To me this seems, that the cause is > outside of my code:
Nope, bug is in your code. Build ffmpeg with address sanitizer and you will see it. > > valgrind: m_mallocfree.c:307 (get_bszB_as_is): Assertion 'bszB_lo == > bszB_hi' failed. > valgrind: Heap block lo/hi size mismatch: lo = 113, hi = 114. > This is probably caused by your program erroneously writing past the > end of a heap block and corrupting heap metadata. If you fix any > invalid writes reported by Memcheck, this assertion failure will > probably go away. Please try that before reporting this as a bug. > > > host stacktrace: > ==19306== at 0x580441BA: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x580442D4: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x58044459: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x5805184C: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x58053B56: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x5800B8CC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x5800BAD7: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x5800BDA4: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x5809F5DC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > ==19306== by 0x580AED50: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) > > sched status: > running_tid=1 > > Thread 1: status = VgTs_Runnable (lwpid 19306) > ==19306== at 0x4C31E76: memalign (in > /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) > ==19306== by 0x4C31F91: posix_memalign (in > /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) > ==19306== by 0xF3F0B2: av_malloc (mem.c:87) > ==19306== by 0xF3F2B8: av_mallocz (mem.c:238) > ==19306== by 0xF2D83D: av_buffer_ref (buffer.c:95) > ==19306== by 0xF37D41: av_frame_ref (frame.c:478) > ==19306== by 0x2851D1: do_video_out (ffmpeg.c:1344) > ==19306== by 0x28A1EA: reap_filters (ffmpeg.c:1504) > ==19306== by 0x28E7DD: transcode_step (ffmpeg.c:4648) > ==19306== by 0x28E7DD: transcode (ffmpeg.c:4692) > ==19306== by 0x26B51D: main (ffmpeg.c:4894) > > Thread 2: status = VgTs_WaitSys (lwpid 19309) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0x865205: frame_worker_thread (pthread_frame.c:177) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 3: status = VgTs_WaitSys (lwpid 19310) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0x865205: frame_worker_thread (pthread_frame.c:177) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 4: status = VgTs_WaitSys (lwpid 19311) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0x865205: frame_worker_thread (pthread_frame.c:177) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 5: status = VgTs_WaitSys (lwpid 19312) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0xF5799D: thread_worker (slicethread.c:78) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 6: status = VgTs_WaitSys (lwpid 19313) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0xF5799D: thread_worker (slicethread.c:78) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 7: status = VgTs_WaitSys (lwpid 19314) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0xF5799D: thread_worker (slicethread.c:78) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 8: status = VgTs_WaitSys (lwpid 19316) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0xF5799D: thread_worker (slicethread.c:78) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 9: status = VgTs_WaitSys (lwpid 19318) > ==19306== at 0x58371AA: __lll_unlock_wake (lowlevellock.S:371) > ==19306== by 0x58317DE: __pthread_mutex_unlock_usercnt > (pthread_mutex_unlock.c:54) > ==19306== by 0x58317DE: pthread_mutex_unlock (pthread_mutex_unlock.c:345) > ==19306== by 0xF57A18: thread_worker (slicethread.c:89) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > Thread 10: status = VgTs_WaitSys (lwpid 19319) > ==19306== at 0x58339F3: futex_wait_cancelable (futex-internal.h:88) > ==19306== by 0x58339F3: __pthread_cond_wait_common > (pthread_cond_wait.c:502) > ==19306== by 0x58339F3: pthread_cond_wait@@GLIBC_2.3.2 > (pthread_cond_wait.c:655) > ==19306== by 0xF5799D: thread_worker (slicethread.c:78) > ==19306== by 0x582D6DA: start_thread (pthread_create.c:463) > ==19306== by 0x5B6688E: clone (clone.S:95) > > > Note: see also the FAQ in the source distribution. > It contains workarounds to several common problems. > In particular, if Valgrind aborted or crashed after > identifying problems in your program, there's a good chance > that fixing those problems will prevent Valgrind aborting or > crashing, especially if it happened in m_mallocfree.c. > > If that doesn't help, please report this bug to: www.valgrind.org > > In the bug report, send all the above text, the valgrind > version, and what OS and version you are using. Thanks. > > -Ulf > > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".