c++ - 使用 Allegro 库播放任何类型的视频文件的典型示例是什么?

标签 c++ visual-studio-2012 allegro allegro5 msvc12

<分区>

我想在我的 C++ 程序中播放某种类型/格式的视频,我已经安装了 Allegro 4.2.2 和 Allegro5 以及 MSVC10 和 MSVC13,我不想使用任何其他库,因为它们有点很难理解,如果有更简单的方法,请告诉我,否则请告诉我如何使用 Allegro 完成此任务?

最佳答案

从 Allegro5.1 开始,有一个 video addon (它不可用 5.0).

有一个 example 包含在演示如何使用它的 allegro5 存储库中。

总的要点是:

  1. 调用al_init_video_addon
  2. 使用al_open_video打开视频
  3. 使用 al_start_video 开始视频
  4. 使用 al_get_video_frame 获取当前帧作为位图
  5. 使用通常的位图绘制函数绘制该位图 (al_draw_*_bitmap)

在游戏循环中重复 4-5,然后在完成后调用 al_close_video

在示例中,他们使用 al_draw_scaled_bitmap 将位图缩放到 屏幕;看看评论就知道了。

请注意,您需要在链接程序时链接视频插件 (-lallegro_video).

关于c++ - 使用 Allegro 库播放任何类型的视频文件的典型示例是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36035892/

相关文章:

c++ - std::string `s` 通过 `&s[0]` 转换为 char* - 这是如何/为什么起作用的?

c++ - 如何在 QT 中通过 C++ 监控 Linux 中的服务?

c# - 有没有办法让代码分析忽略 "InternalsVisibleTo"?

c++ - 快板 C++ 库

c++ - 错误: taking address of temporary [-fpermissive]

c++ - SDL 链接器错误

c++ - C++ 中的矩阵与数组的数组及其动态分配

c++ - 为什么 Visual Studio 在取消引用之前增加循环指针?

c++ - Visual Studio 2012 - 嵌入式输出控制台而不是 cmd?

c++ - 如何在没有背景的情况下加载bmp