This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VM: TDA4VM: SDK: FFmpeg and OpenH264 error

Part Number: TDA4VM


Hello,

When running an application on Ubuntu on J7 EVM which is using ffmpeg and openh264, I get a runtime error that the encoder cannot be found:

[h264_v4l2m2m @ 0x328a69a0] driver 'vxd-dec' on card 'vxd-dec'
[h264_v4l2m2m @ 0x328a69a0] Could not find a valid device
[h264_v4l2m2m @ 0x328a69a0] can't configure encoder

I did a check on ffmpeg, which is supplied with TI SDK, and the h264_v4l2m2m is listed as supported encoder. But I can also note that the --enable-libopenh264 flag is missing in the configure report:

$ffmpeg -encoders | grep 264
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 9.2.1 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)
configuration: --disable-stripping --enable-pic --enable-shared --enable-pthreads --cross-prefix=aarch64-none-linux-gnu- --ld='aarch64-none-linux-gnu-gcc --sysroot=/recipe-sysroot' --cc='aarch64-none-li
nux-gnu-gcc --sysroot=/recipe-sysroot' --cxx='aarch64-none-linux-gnu-g++ --sysroot=/recipe-sysroot' --arch=aarch64 --target-os=linux --enable-cross-compile --extra-cflags=' -O2 -pipe -g -feliminate-unused
-debug-types -fmacro-prefix-map==/usr/src/debug/ffmpeg/4.2.2-r0.arago0 -fdebug-prefix-map==/usr/src/debug/ffmpeg/4.2.2-r0.arago0 -fdebug-prefix-map=/recipe-sysroot= -fdebug-prefix-map=/recipe-sysroot-nati
ve= --sysroot=/recipe-sysroot' --extra-ldflags='-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed' --sysroot=/recipe-sysroot --libdir=/usr/lib --shlibdir=/usr/lib --datadir=/usr/share/ffmpeg --disable-mipsdsp
--disable-mipsdspr2 --cpu=generic --pkg-config=pkg-config --enable-alsa --enable-avcodec --enable-avdevice --enable-avfilter --enable-avformat --enable-avresample --enable-bzlib --disable-libfdk-aac --ena
ble-gpl --disable-libgsm --disable-indev=jack --disable-libvorbis --enable-lzma --disable-libmfx --disable-libmp3lame --disable-openssl --enable-postproc --disable-sdl2 --disable-libspeex --enable-swresam
ple --enable-swscale --enable-libtheora --disable-vaapi --disable-vdpau --disable-libvpx --disable-libx264 --disable-libx265 --disable-libxcb --disable-outdev=xv --enable-zlib
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
V..... h264_v4l2m2m V4L2 mem2mem H.264 encoder wrapper (codec h264)

Prerequisites:

  • J7 EVM + SDK version 08.00.00.08
  • The program runs successfully on a native Ubuntu 18.4, no special configuration

I have the following questions:

  1. Is the error message relevant to the ffmpeg and openh264 libraries?
  2. Does the ffmpeg coming with the SDK is configured to support the listed h.264 encoding?
  3. If not, how to re-configure the existing libraries?

Regards,

Borislav