Video Codec Error when trying to build

Hi everyone,

I couldn’t find this anywhere so I decided to open a topic about it. I downloaded the Nvidia Video Codec SDK 11.1.5 and then built it successfully with cmake using the release flag as in the read me file. I made sure to install all the necessary prerequisites as per the same pdf, but still there was an error when I ran the make command. Namely ‘AVFormatContext {aka struct AVFormatContext}’ has no member named ‘url’. I went through the documentation of the AVFormat library, as well as the header of my installation and this member was there so the code should’ve been running smoothly. So currently I’m pretty confused as to why this is happening.

I’m currently running Ubuntu 18.04 inside WSL2. I also have an anaconda environment, if that’s relevant. Additionally the nvidia-smi command shows, that the current driver is 510.06 and the output of ffmpeg is as follows:

ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7.3.0 (crosstool-NG
  configuration: --prefix=/home/milen/anaconda3/envs/gcn_an_det --cc=/home/conda/feedstock_root/build_artifacts/ffmpeg_1551253354453/_build_env/bin/x86_64-conda_cos6-linux-gnu-cc --disable-doc --disable-openssl --enable-avresample --enable-gnutls --enable-gpl --enable-hardcoded-tables --enable-libfreetype --enable-libopenh264 --enable-libx264 --enable-pic --enable-pthreads --enable-shared --enable-static --enable-version3 --enable-zlib --enable-libmp3lame
  libavutil      56. 22.100 / 56. 22.100
  libavcodec     58. 35.100 / 58. 35.100
  libavformat    58. 20.100 / 58. 20.100
  libavdevice    58.  5.100 / 58.  5.100
  libavfilter     7. 40.101 /  7. 40.101
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  3.100 /  5.  3.100
  libswresample   3.  3.100 /  3.  3.100
  libpostproc    55.  3.100 / 55.  3.100

Any help would be appreciated.

EDIT: The file, which creates the problem is FFmpegStreamer.h.

Hello @milen.nikolov and welcome to the NVIDIA developer forums!

Please refer to the README.pdf once more. Specifically the Linux Configuration Requirements. It states there:

The sample applications have been compiled and tested against the libraries and headers
from FFmpeg- 4.4.

Judging from the output above I think that the make process uses wrong include paths for the necessary ffmpeg headers. I suggest you try to fix that as a first step.

I hope that helps!