c++ - OpenCL 视频处理

标签 c++ linux video opencl

我要写一个堆叠软件。因此,我想将一个或多个视频文件的帧提取到 opencl 缓冲区,然后使用 opencl 内核 处理它们。

但我不知道如何加载视频帧,因为我从未处理过视频。 当我使用 opencl 时,我的主要关注点显然是高性能!

我知道有 ffmpegopencv 等库,但由于我不喜欢它,所以我不知道哪个最适合我的需求。

那么你能给我建议使用哪个库/函数,哪个与 opencl 结合使用效果最好(最快)?

我还没有找到有用的东西。我可以从哪里开始? (像简短的文档或教程之类的东西会很好)

提前致谢!

我在 Linux(不需要跨平台)下使用 nvidia 卡工作,我的(首选)编程语言是 c++。我更喜欢 h264 作为视频格式,但是 avimovmp4 ... 也是可以的。

最佳答案

如果您在 Windows 上使用 AMD GPU,请尝试使用 AMD Media SDK。

来自 SemiAcurate 网站 http://semiaccurate.com/2012/06/18/amd-media-sdk-announced-at-afds/

'AMD 的媒体 SDK。该 SDK 的目的是通过 API 和代码示例公开 AMD 的固定功能硬件 block 和 GPU 加速能力。在竞争激烈的市场环境中,AMD 需要开发人员利用其 APU 中基于 GPU 的功能,以便 APU 为一般计算工作负载提供切实的好处。为此,AMD 正在准备示例应用程序,创建供开发人员在其应用程序中使用的 API,并通过指南和教程记录所有内容,作为他们创建此媒体 SDK 的一部分。”

http://developer.amd.com/tools-and-sdks/heterogeneous-computing/media-sdk/

我认为它仍处于测试阶段,但有一组示例

http://amd.wpengine.com/app-sdk/codelisting.php?q=Media

关于c++ - OpenCL 视频处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20953729/

相关文章:

c++ - 利用 SSE 和其他 CPU 扩展

javascript - 全元素视频全屏

javascript - 如何通过 PHP 或 JavaScript 从 Amazon S3 视频获取缩略图?

linux - 编写一个shell脚本,在该行的前面的文本文件中打印每行的行号

linux - 如何在允许 Linux 中给定用户读/写的同时加密数据

c# - 如何用C#.Net和DirectX编写音视频播放引擎(综合分析)?

c++ - 编程 : Principles and Practice Using C++ chapter 4 drill step 6 : General question about numeric range

c++ - 使用 Android Studio 构建共享 *.so 库的发布版本

c++ - 用于返回集合的所有子集的适当数据结构

c - 寻找有关 Linux 系统调用的详细文档