docs
v7 迁移指南

v7 迁移指南

本文档的目的是说明如何把一个 MLT 主版本 6 的应用迁移到主版本 7。

构建

  • 构建系统已完全迁移到 CMake。相关选项请阅读顶层的 CMakeLists.txt。
  • 主版本号现在既是库名的一部分,也出现在安装路径中:
    • pkg-config 文件(mlt-framework-7.pc 和 mlt++-7.pc),
    • 模块(lib/mlt-7/),
    • 头文件(include/mlt-7/),
    • 以及数据(share/mlt-7/)。
  • 因此,你可能需要修改定位 MLT 包的方式,或修改用于访问模块的那些覆盖设置。
  • mlt++ 头文件现在安装到 include/mlt-7/,而不再是独立的一套。
  • 不再有 mlt-config,只有 pkg-config。
  • 旧的 make 目标 dist、validate-yml、codespell 和 uninstall 已移除。

框架

  • 由于亮度(luma)文件生成功能已被移除,请参阅 mlt_luma_map 的文档。
  • mlt_geometry 已移除
  • mlt_events 发生了重大变化:
    • mlt_transmitter 因不再必要而被移除
    • 新增了 mlt_event_data,用来替代传给 mlt_events_fire() 和 mlt_listener() 的可变参数。
  • mlt_image_rgb24a 更名为 mlt_image_rgba
  • mlt_image_rgb24 更名为 mlt_image_rgb
  • mlt_image_glsl 更名为 mlt_image_movit
  • mlt_image_glsl_texture 更名为 mlt_image_opengl_texture
  • mlt_image_opengl 已移除

模块

  • 以下模块已被移除。它们中的大多数此前已被标记为废弃:
    • dv
    • feeds
    • gtk2(不是 gdk,gdk 仍然存在,并提供重要的 pango 和 pixbuf 生产器。)
    • kino
    • linsys(提供 sdi 消费器,不要与 decklink 混淆)
    • motion_est
    • swfdec
    • videostab(已被 vid.stab 取代)
    • lumas(在 v6.18.0 中由 mlt_luma_map API 取代)
      这意味着不再生成文件,但像 %luma01.pgm 这样的旧文件名仍然 受支持,它们是动态生成的,并会适配 mlt_profile 的分辨率。
  • opengl 模块更名为 movit,但服务模块的名称保持不变。
  • vmfx 模块的服务被移入 plus,但服务模块的名称保持不变。
  • 以下服务模块已被移除:
    • core/data_feed
    • core/data_show
    • core/region 转场与滤镜