I have a weird issue with the encoder and converter of the mmapi library.
I have two say it has worked before well. But suddenly I cannot start my program that uses an encoder.
It seems that my program and the samples are stuck before the main in the static initialization phase.
Here is the backtrace in GDB:
Reading symbols from ./video_encode... (No debugging symbols found in ./video_encode) (gdb) run Starting program: /usr/src/jetson_multimedia_api/samples/01_video_encode/video_encode [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/aarch64-linux-gnu/libthread_db.so.1". ^C Program received signal SIGINT, Interrupt. 0x0000007fb7f8ff88 in __libc_connect (fd=8, addr=..., len=16) at ../sysdeps/unix/sysv/linux/connect.c:26 26 ../sysdeps/unix/sysv/linux/connect.c: No such file or directory. (gdb) bt #0 0x0000007fb7f8ff88 in __libc_connect (fd=8, addr=..., len=16) at ../sysdeps/unix/sysv/linux/connect.c:26 #1 0x0000007fb76c00b4 in ?? () from /usr/lib/aarch64-linux-gnu/libxcb.so.1 #2 0x0000007fb76cd000 in xcb_get_modifier_mapping () from /usr/lib/aarch64-linux-gnu/libxcb.so.1 Backtrace stopped: previous frame inner to this frame (corrupt stack?)
I have done two things that might have caused the issue,
First I used a phone charger for a while to power the Jetson, but I’m back on the provided transformer.
Second, I installed GCC 11, but now I’m back on GCC 8. As the samples’ makefile shows an error if GCC version is higher than 8. But I built my own program that use mmapi for a while with GCC 11 it worked for a while.
It seems that the encoder’s code cannot reach the physical encoding device. Could it have been broken by my phone’s charger ?
Is there a way to check the state of the encoder from the terminal ?
Thank you for your help.