AirenSoft / OvenMediaEngine

OvenMediaEngine (OME) is a Sub-Second Latency Live Streaming Server with Large-Scale and High-Definition. #WebRTC #LLHLS
https://airensoft.com/ome.html
GNU Affero General Public License v3.0
2.59k stars 1.06k forks source link

Ingest will not start #1506

Closed krakow10 closed 9 months ago

krakow10 commented 9 months ago

Describe the bug Ingest will not start due to an error. The recent zero-copy changes could be related. The error appears to be: No such filter: 'scale_npp'

To Reproduce Steps to reproduce the behavior:

  1. Server.xml.log
  2. OBS 30.0.2 patched with https://github.com/obsproject/obs-studio/pull/9028 a build artifact with this patch is available here: https://github.com/obsproject/obs-studio/actions/runs/7313713211
  3. Video codec H.264 1440p120fps @ 250mbps audio codec 6 tracks AAC stereo @ 320kbps
  4. Stream SRT to srt://10.0.0.8:9999?streamid=srt%3A%2F%2F10.0.0.8%3A9999%2Fhw60%2Fquat&latency=20000
  5. See error

Expected behavior No error during ingest.

Logs ovenmediaengine.log

Server (please complete the following information):

Player (please complete the following information): N/A

Additional context The systemd service log says:

Jan 23 22:10:03 ovenmediaengine OvenMediaEngine[264764]: [2024-01-23 22:10:03.878] E [Dech264NV:264913] FFmpeg | third_parties.cpp:111  | No such filter: 'scale_npp'
Jan 23 22:10:03 ovenmediaengine OvenMediaEngine[264764]: [2024-01-23 22:10:03.878] E [Dech264NV:264913] Transcoder | filter_rescaler.cpp:311  | Could not parse filter string for rescaling: fps=fps=60.00:round=near,settb=1/90000,scale_npp=2560:1440,format=cuda
Jan 23 22:10:03 ovenmediaengine OvenMediaEngine[264764]: [2024-01-23 22:10:03.878] E [Dech264NV:264913] Transcoder | transcoder_filter.cpp:77   | Could not create filter
Jan 23 22:10:03 ovenmediaengine OvenMediaEngine[264764]: [2024-01-23 22:10:03.878] E [Dech264NV:264913] Transcoder | transcoder_stream.cpp:929  | [#default#hw60/quat(100)] Failed to create filter. Filter(8)
Keukhan commented 9 months ago

@krakow10

It appears that the environment does not have the scale_npp filter installed. Please reinstall the dependent libraries with prerequisites.sh --enable-nvc and test again.

Thanks.

krakow10 commented 9 months ago

I am positive that I did that. I will go check for the fourth time. Watching quat@ovenmediaengine:~/OvenMediaEngine$ misc/prerequisites.sh --enable-nvc, ffmpeg is building like this:

krakow10 commented 9 months ago

A few days ago when this issue first occurred, I found a post online which seems to imply that the filter can be reported as not existing according to the context of the filter chain: https://superuser.com/questions/1760325/scale-cuda-or-scale-npp-no-such-filter-found-error If they use hwupload, it exists, else not exists. However, that seems strange to me and your explanation seems more likely.

krakow10 commented 9 months ago

Here is the complete output of quat@ovenmediaengine:~/OvenMediaEngine$ misc/prerequisites.sh --enable-nvc: stdout.log

The installed ffmpeg banner displays as follows: quat@ovenmediaengine:~/OvenMediaEngine$ /opt/ovenmediaengine/bin/ffmpeg

ffmpeg version 5.0.1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 12 (Debian 12.2.0-14)
  configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -I/usr/local/cuda/include ' --extra-ldflags='-L/opt/ovenmediaengine/lib -Wl,-rpath,/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 ' --extra-libs=-ldl --enable-nonfree --disable-everything --disable-programs --disable-avdevice --disable-dwt --disable-lsp --disable-lzo --disable-faan --disable-pixelutils --enable-shared --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --enable-network --enable-libsrt --enable-dct --enable-rdft --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --enable-hwaccel='cuda,cuvid' --enable-ffmpeg --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,mp3float,mp3,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-protocol='tcp,udp,rtp,file,rtmp,tls,rtmps,libsrt' --enable-demuxer='rtsp,flv,live_flv,mp4,mp3' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,scale_npp,hwdownload,hwupload,hwupload_cuda'
  WARNING: library configuration mismatch
  avutil      configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -g -I/usr/local/cuda/include' --extra-ldflags='-L/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 -Wl,-rpath,/opt/ovenmediaengine/lib' --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-shared --disable-static --disable-debug --disable-doc --disable-programs --disable-avdevice --disable-dct --disable-dwt --disable-lsp --disable-rdft --disable-faan --disable-pixelutils --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --disable-everything --disable-fast-unaligned --enable-hwaccel='cuda,cuvid' --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-network --enable-protocol=tcp --enable-protocol=udp --enable-protocol='rtp,file,rtmp,tls,rtmps' --enable-demuxer='rtsp,flv,live_flv,mp4' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,hwdownload,hwupload,hwupload_cuda'
  avcodec     configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -g -I/usr/local/cuda/include' --extra-ldflags='-L/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 -Wl,-rpath,/opt/ovenmediaengine/lib' --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-shared --disable-static --disable-debug --disable-doc --disable-programs --disable-avdevice --disable-dct --disable-dwt --disable-lsp --disable-rdft --disable-faan --disable-pixelutils --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --disable-everything --disable-fast-unaligned --enable-hwaccel='cuda,cuvid' --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-network --enable-protocol=tcp --enable-protocol=udp --enable-protocol='rtp,file,rtmp,tls,rtmps' --enable-demuxer='rtsp,flv,live_flv,mp4' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,hwdownload,hwupload,hwupload_cuda'
  avformat    configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -g -I/usr/local/cuda/include' --extra-ldflags='-L/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 -Wl,-rpath,/opt/ovenmediaengine/lib' --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-shared --disable-static --disable-debug --disable-doc --disable-programs --disable-avdevice --disable-dct --disable-dwt --disable-lsp --disable-rdft --disable-faan --disable-pixelutils --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --disable-everything --disable-fast-unaligned --enable-hwaccel='cuda,cuvid' --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-network --enable-protocol=tcp --enable-protocol=udp --enable-protocol='rtp,file,rtmp,tls,rtmps' --enable-demuxer='rtsp,flv,live_flv,mp4' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,hwdownload,hwupload,hwupload_cuda'
  avfilter    configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -g -I/usr/local/cuda/include' --extra-ldflags='-L/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 -Wl,-rpath,/opt/ovenmediaengine/lib' --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-shared --disable-static --disable-debug --disable-doc --disable-programs --disable-avdevice --disable-dct --disable-dwt --disable-lsp --disable-rdft --disable-faan --disable-pixelutils --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --disable-everything --disable-fast-unaligned --enable-hwaccel='cuda,cuvid' --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-network --enable-protocol=tcp --enable-protocol=udp --enable-protocol='rtp,file,rtmp,tls,rtmps' --enable-demuxer='rtsp,flv,live_flv,mp4' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,hwdownload,hwupload,hwupload_cuda'
  swscale     configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -g -I/usr/local/cuda/include' --extra-ldflags='-L/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 -Wl,-rpath,/opt/ovenmediaengine/lib' --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-shared --disable-static --disable-debug --disable-doc --disable-programs --disable-avdevice --disable-dct --disable-dwt --disable-lsp --disable-rdft --disable-faan --disable-pixelutils --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --disable-everything --disable-fast-unaligned --enable-hwaccel='cuda,cuvid' --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-network --enable-protocol=tcp --enable-protocol=udp --enable-protocol='rtp,file,rtmp,tls,rtmps' --enable-demuxer='rtsp,flv,live_flv,mp4' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,hwdownload,hwupload,hwupload_cuda'
  swresample  configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -g -I/usr/local/cuda/include' --extra-ldflags='-L/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 -Wl,-rpath,/opt/ovenmediaengine/lib' --extra-libs=-ldl --enable-gpl --enable-nonfree --enable-shared --disable-static --disable-debug --disable-doc --disable-programs --disable-avdevice --disable-dct --disable-dwt --disable-lsp --disable-rdft --disable-faan --disable-pixelutils --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --disable-everything --disable-fast-unaligned --enable-hwaccel='cuda,cuvid' --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-network --enable-protocol=tcp --enable-protocol=udp --enable-protocol='rtp,file,rtmp,tls,rtmps' --enable-demuxer='rtsp,flv,live_flv,mp4' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,hwdownload,hwupload,hwupload_cuda'
  libavutil      57. 17.100 / 57. 28.100
  libavcodec     59. 18.100 / 59. 37.100
  libavformat    59. 16.100 / 59. 27.100
  libavfilter     8. 24.100 /  8. 44.100
  libswscale      6.  4.100 /  6.  7.100
  libswresample   4.  3.100 /  4.  7.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

After this prerequisite reinstall process, I also rebuilt OvenMediaEngine and the issue persists.

Here is the command history which I captured these logs from:

  552  misc/prerequisites.sh --enable-nvc &> stdout.txt
  553  pwd
  554  ls
  555  ffmpeg
  556  ls /opt
  557  ls /opt/ovenmediaengine/
  558  ls /opt/ovenmediaengine/bin/
  559  /opt/ovenmediaengine/bin/ffmpeg 
  560  clear
  561  /opt/ovenmediaengine/bin/ffmpeg 
  562  cd src
  563  make -j16 release
  564  sudo make install
  565  sudo systemctl daemon-reload
  566  sudo systemctl restart ovenmediaengine
  567  sudo journalctl -fu ovenmediaengine
  568  history
Keukhan commented 9 months ago

The libav version referenced by ffmpeg is different. Check if the library in the wrong path is being referenced using the ldd ffmpeg** command.

Below shows my ffmpeg library version.

ffmpeg version 5.0.1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.2)
  configuration: --prefix=/opt/ovenmediaengine --extra-cflags='-I/opt/ovenmediaengine/include -I/usr/local/cuda/include -g' --extra-ldflags='-L/opt/ovenmediaengine/lib -Wl,-rpath,/opt/ovenmediaengine/lib -L/usr/local/cuda/lib64 ' --extra-libs=-ldl --enable-nonfree --enable-debug --disable-stripping --disable-everything --disable-programs --disable-avdevice --disable-dwt --disable-lsp --disable-lzo --disable-faan --disable-pixelutils --enable-shared --enable-zlib --enable-libopus --enable-libvpx --enable-libfdk_aac --enable-libopenh264 --enable-openssl --enable-network --enable-libsrt --enable-dct --enable-rdft --disable-nvdec --disable-nvdec --disable-vaapi --disable-vdpau --disable-cuda-llvm --disable-cuvid --disable-ffnvcodec --enable-cuda-nvcc --enable-cuda-llvm --enable-libnpp --enable-nvenc --enable-nvdec --enable-ffnvcodec --enable-cuvid --enable-hwaccel='cuda,cuvid' --enable-ffmpeg --enable-encoder='libvpx_vp8,libopus,libfdk_aac,libopenh264,mjpeg,png,h264_nvenc,hevc_nvenc' --enable-decoder='aac,aac_latm,aac_fixed,mp3float,mp3,h264,hevc,opus,vp8,h264_nvdec,hevc_nvdec,h264_cuvid,hevc_cuvid' --enable-parser='aac,aac_latm,aac_fixed,h264,hevc,opus,vp8' --enable-protocol='tcp,udp,rtp,file,rtmp,tls,rtmps,libsrt' --enable-demuxer='rtsp,flv,live_flv,mp4,mp3' --enable-muxer='mp4,webm,mpegts,flv,mpjpeg' --enable-filter='asetnsamples,aresample,aformat,channelmap,channelsplit,scale,transpose,fps,settb,asettb,format,scale_cuda,scale_npp,hwdownload,hwupload,hwupload_cuda'
  libavutil      57. 17.100 / 57. 17.100
  libavcodec     59. 18.100 / 59. 18.100
  libavformat    59. 16.100 / 59. 16.100
  libavfilter     8. 24.100 /  8. 24.100
  libswscale      6.  4.100 /  6.  4.100
  libswresample   4.  3.100 /  4.  3.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
soulk@OME-Dev:/opt/ovenmediaengine/bin$ ldd ./ffmpeg 
        linux-vdso.so.1 (0x00007ffd6494b000)
        libavfilter.so.8 => /opt/ovenmediaengine/lib/libavfilter.so.8 (0x00007f0affba6000)
        libavformat.so.59 => /opt/ovenmediaengine/lib/libavformat.so.59 (0x00007f0affaa9000)
        libavcodec.so.59 => /opt/ovenmediaengine/lib/libavcodec.so.59 (0x00007f0aff50c000)
        libswresample.so.4 => /opt/ovenmediaengine/lib/libswresample.so.4 (0x00007f0aff4ec000)
        libswscale.so.6 => /opt/ovenmediaengine/lib/libswscale.so.6 (0x00007f0aff454000)
        libavutil.so.57 => /opt/ovenmediaengine/lib/libavutil.so.57 (0x00007f0aff295000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f0aff12d000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f0aff10a000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f0afef18000)
        libnppig.so.10 => /lib/x86_64-linux-gnu/libnppig.so.10 (0x00007f0afd446000)
        libnppicc.so.10 => /lib/x86_64-linux-gnu/libnppicc.so.10 (0x00007f0afce09000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f0afcded000)
        libssl.so.3 => /opt/ovenmediaengine/lib/libssl.so.3 (0x00007f0afcd3e000)
        libcrypto.so.3 => /opt/ovenmediaengine/lib/libcrypto.so.3 (0x00007f0afc8d0000)
        libsrt.so.1.5 => /opt/ovenmediaengine/lib/libsrt.so.1.5 (0x00007f0afc7e3000)
        libvpx.so.7 => /opt/ovenmediaengine/lib/libvpx.so.7 (0x00007f0afc70b000)
        libfdk-aac.so.2 => /opt/ovenmediaengine/lib/libfdk-aac.so.2 (0x00007f0afc5bf000)
        libopus.so.0 => /opt/ovenmediaengine/lib/libopus.so.0 (0x00007f0afc560000)
        libopenh264.so.7 => /opt/ovenmediaengine/lib/libopenh264.so.7 (0x00007f0afc3e5000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f0afc3df000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f0affc3d000)
        libnppc.so.10 => /lib/x86_64-linux-gnu/libnppc.so.10 (0x00007f0afc164000)
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f0afc15a000)
        libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f0afbf78000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f0afbf5b000)
krakow10 commented 9 months ago

I see that you don't have the WARNING: library configuration mismatch

Here is my outputs: quat@ovenmediaengine:~/OvenMediaEngine/src$ ldd ffmpeg

ldd: ./ffmpeg: No such file or directory

quat@ovenmediaengine:~/OvenMediaEngine/src$ ldd /opt/ovenmediaengine/bin/ffmpeg

    linux-vdso.so.1 (0x00007ffe009f6000)
    libavfilter.so.8 => /opt/ovenmediaengine/lib/libavfilter.so.8 (0x00007f5127581000)
    libavformat.so.59 => /opt/ovenmediaengine/lib/libavformat.so.59 (0x00007f512748d000)
    libavcodec.so.59 => /opt/ovenmediaengine/lib/libavcodec.so.59 (0x00007f5126e00000)
    libswresample.so.4 => /opt/ovenmediaengine/lib/libswresample.so.4 (0x00007f512746d000)
    libswscale.so.6 => /opt/ovenmediaengine/lib/libswscale.so.6 (0x00007f51273ce000)
    libavutil.so.57 => /opt/ovenmediaengine/lib/libavutil.so.57 (0x00007f5126c24000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f5126b45000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5126964000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f51273a3000)
    libssl.so.3 => /opt/ovenmediaengine/lib/libssl.so.3 (0x00007f51272fb000)
    libcrypto.so.3 => /opt/ovenmediaengine/lib/libcrypto.so.3 (0x00007f5126400000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f51272f4000)
    libvpx.so.7 => /opt/ovenmediaengine/lib/libvpx.so.7 (0x00007f51268a0000)
    libfdk-aac.so.2 => /opt/ovenmediaengine/lib/libfdk-aac.so.2 (0x00007f51262b8000)
    libopus.so.0 => /opt/ovenmediaengine/lib/libopus.so.0 (0x00007f512625e000)
    libopenh264.so.6 => /opt/ovenmediaengine/lib/libopenh264.so.6 (0x00007f51260e0000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f51272ef000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f512760f000)
    libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f5125e00000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f5126880000)
krakow10 commented 9 months ago

This could be an issue with the environment being extremely old. I've been using this container and updating in place for years now. Would deleting /opt/ovenmediaengine/ be enough to completely uninstall everything and then install freshly?

Keukhan commented 9 months ago

To be sure, please check whether the libavfilter.so file is installed in a path other than /opt/ovenmediaengine/lib/libavfilter.so.8.

krakow10 commented 9 months ago

Deleting that folder and reinstalling has resolved this particular issue! Embarrassingly for me, it may have fixed other older chronic issues too such as the delayed stream starting (#901)...

I'm still having difficulties, notably the twitch stream doesn't show up, but I am going to try to work those out myself first. I'm excited by the zero-copy changes, it looks like the cpu usage has been cut from 12% down to 3%, and gpu usage has also dropped!

Sorry this turned out to be a support issue, if I can't figure out my other problems I will open a discussion. Thank you for your help!

krakow10 commented 9 months ago

I'm still having difficulties, notably the twitch stream doesn't show up

It was the track IDs in the curl commands I use to start the stream. The new data tracks changed the IDs. Everything has been resolved.