ffmpeg 失败 - 455 方法在此状态下无效

ffmpeg failed - 455 Method Not Valid in This State

我创建了一个 nodejs 应用程序,它使用 FFMPEG 获取 rtsp 流式传输,以便使用 Opencv3 对其进行分析。如果我在我的本地安装 FFMPEGopencv 它就可以工作了。

但现在我创建了一个 docker 图像,其中包含这些库的安装,我将其用作创建另一个图像和容器的基础,我正在尝试 运行 我的应用程序。当我 运行 它在那个容器中时,我在尝试使用 FFMPEG 指令获取 rtsp 流时一遍又一遍地收到此错误=35=].

这就是我在图像中安装 FFMPEG 的方式:

# ---------------------- OpenCV ffmpeg ---------------------------#
RUN mkdir -p /opt/src \
 && curl -Lo /opt/src/ffmpeg-${FFMPEG_VERSION}.tar.gz \
    http://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.bz2 \
  && tar -xvf /opt/src/ffmpeg-${FFMPEG_VERSION}.tar.gz -C /opt/src \
  && cd /opt/src/ffmpeg-${FFMPEG_VERSION} \
  && ./configure --enable-gpl --enable-avresample --enable-libopencore-amrnb \
  --enable-libx264 --enable-libxvid --enable-postproc --enable-version3 \
  --enable-shared --enable-pic --extra-ldexeflags=-pie \
  && make -j $(nproc) \
  && make install \
  && ldconfig -v \
  && rm -rf /opt/src

# ---------------------- OpenCV stuff ---------------------------#
RUN mkdir -p /opt/src/opencv-${OPENCV_VERSION}/build \
  && curl -sLo /opt/src/opencv3.tar.gz \
     https://github.com/Itseez/opencv/archive/${OPENCV_VERSION}.tar.gz \
  && tar -xzvf /opt/src/opencv3.tar.gz -C /opt/src \
  && cd /opt/src/opencv-${OPENCV_VERSION}/build \
  && cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D WITH_TBB=ON \
    -D WITH_OPENMP=ON \
    -D WITH_FFMPEG=ON .. \
  && make -j "$(nproc)" \
  && make install \
  && ldconfig -v \
  && rm -rf /opt/src

您知道这个错误是什么以及如何解决吗?我认为这可能与安装它们(FFMPEGOPENCV)时的初始配置有关。

感谢您的帮助

事实证明,最近发布的新版 OpenCV (Opencv3.1) 中有一个考虑到 tcp 传输的修复程序,所以通过升级到最新版本我设法解决了这个问题