获取视频的当前帧 C++

问题描述

我正在使用 Visual Studio
我需要编写一个 c++ dll,在后台播放视频(h265 编解码器)。不应该看到视频,只应该听到声音。我需要捕捉每一帧并将其提供给主机应用程序。

我找不到可以让我访问播放器当前帧的简单 API。

任何帮助将不胜感激

解决方法

这个问题很广泛,但是,有三个选择:

  1. libVLC - 易于使用和实施,但您没有完全访问权限(但对于您的要求,应该足够了)
  2. ffmpeg - 您可以生成 ffmpeg 命令行工具并获得播放音频输出。这应该很容易。如果你想要更多的控制,你可以使用 ffmpeg 作为库,这有点难以使用和实现,但你可以完全控制解码和播放的过程
  3. gstreamer - 与 ffmpeg 相同