MLT Multimedia Framework

MLT是一个开放源代码的多媒体框架,为电视广播设计和开发。 (MLT is an open source multimedia framework, designed and developed for television broadcasting. )

Github stars Tracking Chart

MLT Multimedia Framework

MLT 是一个开放源代码的多媒体框架,为电视广播设计和开发。用于创建、管理和运行多轨音频/视频合成。她是非线性视频编辑器的引擎,可用于各种应用,而不仅仅是桌面视频编辑器。

它为广播公司、视频编辑器、媒体播放器、转码器、网络流媒体和更多类型的应用程序提供了工具包。该系统的功能通过各种现成的工具、XML 创作组件和基于可扩展插件的 API 提供的。

特性

  • 小而干净的API,具有最小的依赖性(POSIX 和 C99)
  • 模块化设计,用于添加新组件
  • 与其他多媒体库和应用程序的简单集成
  • 支持基于时间的媒体的创作和操作(ala DOM),包括播放列表、多音轨、过滤器和转换
  • 已创建项目的序列化和反序列化
  • 基于 Doxygen 的 API 文档
  • C++、C#、Java、Lua、Perl、PHP、Python、Ruby 和 TCL 的高级语言绑定
  • 多核和 GPU 处理
  • 跨平台:Linux、BSD、Mac OS X MacPorts,Windows MinGW
  • 根据 LGPLv2.1 许可

模块

  • 与许多多媒体库的集成,包括
    • FFmpeg 用于音频/视频解码和编码
    • swfdec 闪存解码器
    • WebVfx 用于基于HTML5的图形/动画生成
    • GTK+Qt 用于图像加载和文本呈现
    • LADSPA 音频插件
    • SoX 音频效果
    • libsamplerate 音频重采样器
    • JACK 音频路由
    • frei0r 视频插件
    • SDL 用于桌面音频/视频输出
  • 支持 FFmpeg 进行输入和编码的几乎所有音频和视频格式以及编解码器 -- 许多具有帧精确的查找功能
  • 支持 GDK 和 QImage 支持的任何格式的图像序列,包括 SVG 和带 alpha 通道的其他格式
  • 全面和优化的视频和音频效果套件,包括通过上述库提供的服务,包括图像缩放,alpha 合成,去隔行,遮罩,运动跟踪,音频混合,音频增益和擦除过渡
  • 多种输出目标/配置文件,包括高清
  • 设计用于利用系统的全部功能的 XML 创作模式
  • 用于记录模块、其服务和参数的基于 YAML 的元数据和模式
  • 通过 FFmpeg 实时 IP 流输出
  • 带有 Blackmagick Design 卡和 MLT 开源“decklink”模块的 Linux 可以使用具有嵌入式音频和 HDMI 输入和输出的 HD SDI。此外,SDI 输出支持键控(实时 SDI 输入上的 alpha 复合 MLT 输出)。
  • 使用 DVEO VidPort 卡和 MLT 完全开源的“sdi”模块,Linux 可以使用带有嵌入式音频的 HD SDI 输出。
  • 带有嵌入式音频的 SD PAL SDI 输出可通过 DVEO SDI Master 硬件在 Linux 上使用,而 MLT 模块现已随 MLT 源代码免费提供。
  • 根据 GPLv2LGPLv2.1 许可(可在构建时配置,并非所有模块都在 LGPL 下可用)

协议

  • 全面的客户端/服务器协议和用于播出调度的 API
  • MVCP,基于 dv1394d 中的工作,并基于 SGI MVCP 设计

应用程序

  • 具有良好定义的协议的播出服务器
  • 演示客户端/服务器 API 的示例应用程序
  • 命令行视频编辑器和媒体播放器

配置

通过运行以下命令触发配置:

./configure

有关使用的更多信息,请运行以下命令:

./configure --help

注意:在 CVS 签出或后续更新之后,必须运行此脚本来注册新服务。

编译

一旦配置完成,它应该足以运行:

make

编译系统。

测试

要在不安装的情况下执行mlt工具,或在使用已安装的mlt版本的系统上测试新版本,您应该运行:

. setenv

注意:这只适用于您当前的 shell,它假设一个 bash 或常规的 bourne shell 正在使用。

安装

通过运行以下命令触发安装:

make install 

有关更多详细信息,请参阅 docs/install.txt

(The first version translated by vz on 2020.08.02)

Overview

Name With Ownermltframework/mlt
Primary LanguageC
Program languageShell (Language Count: 19)
PlatformLinux, Mac, Windows
License:GNU Lesser General Public License v2.1
Release Count71
Last Release Namev7.24.0 (Posted on )
First Release Namev0.3.8 (Posted on 2009-04-15 00:53:08)
Created At2012-04-13 18:30:28
Pushed At2024-04-27 17:08:03
Last Commit At2024-04-27 10:07:53
Stargazers Count1.4k
Watchers Count77
Fork Count297
Commits Count6.2k
Has Issues Enabled
Issues Count512
Issue Open Count47
Pull Requests Count386
Pull Requests Open Count0
Pull Requests Close Count82
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

MLT FRAMEWORK README

Written by Charles Yates <charles.yates@pandora.be>
and Dan Dennedy <dan@dennedy.org>

MLT is a LGPL multimedia framework designed for television broadcasting,
and melted is a GPL multi-unit video playout server with realtime
effects.

This document provides a quick reference for the minimal configuration,
build and installation of MLT. 

See the docs directory for usage details.

See the website for development details:
    https://www.mltframework.org/docs/
    https://www.mltframework.org/docs/contributing/

Configuration

Configuration is triggered by running:

    ./configure 

More information on usage is found by running:

    ./configure --help

NB: This script must be run to register new services after a CVS checkout
or subsequent update.

Compilation

Once configured, it should be sufficient to run:

    make

to compile the system.

Testing

To execute the mlt tools without installation, or to test a new version
on a system with an already installed mlt version, you should run:

    . setenv

NB: This applies to your current shell only and it assumes a bash or 
regular bourne shell is in use.

Installation

The install is triggered by running:

    make install 

More Information

For more detailed information, please refer to docs/install.txt.
To the top