Skip to content

Repository files navigation

Ameko

Ameko Banner Logo

.NET 10.0 Zig 0.16.0

Ameko is an editing suite for Advanced Substation Alpha (ASS) subtitles.

Features

  • Subtitle Editing: Create, manipulate, and style subtitles.
  • Audio and Video Playback: Preview your work with the integrated video player powered by FFMS2 and libass.
  • Reference Files: Load an additional subtitle file (e.g. closed captions) to use as a reference. When editing a line, any lines from the reference file that overlap in time are automatically shown in a panel below the editor.
  • Tabs: Ameko is a tabbed editor, allowing you to easily switch between multiple open workspaces, each with their own subtitle, audio, and video files.
  • Projects: Project files enable logical grouping and organization of subtitle files independent of the physical filesystem structure. They also provide a centralized place for team-shared configuration, spellchecking, styles, colors, and more.
  • Key Names & Phrases: Keep you and your team's terminology aligned! Projects have full-featured KNP support, keeping you aware of names and terms in the file and keeping them out of the spellchecker.
  • Profiling: Easily benchmark your subtitles' render time and bitmap size with the built-in profiler!
  • Integrated Git Support: Basic Git features, like commiting, pulling, pushing, and blaming are available in the sidebar.
  • Scripting: Ameko includes robust support for C# scripts and libraries. The integrated package manager and the vast NuGet ecosystem are at your fingertips! In addition, limited support is provided for simple JavaScript-based scriptlets.
  • Powerful API: Scripts and libraries get direct access to AssCS, allowing them to manipulate the document, its events, their components (override tags, etc.), and more with ease.
  • Integrated Script Help: Script authors can attach a Markdown help/documentation file with their script that will automatically be added to the Help window for easy reference.

Future Prospects

Potential features on Ameko's roadmap include:

  • Audio Spectrum View: Add a spectrum visualization option to complement the existing waveform one.
  • Graphical Tools: Tools for visually manipulating subtitles on the video.

The inclusion of these features will likely rely on support from viewers like you! If you're interested in contributing to the project, please reach out!

Running

Windows & macOS

  • Ameko will run out-of-the-box on Windows and macOS.
  • You may need to run xattr -cr Ameko.app before macOS will let you open Ameko for the first time.

Linux

  • To open media files, ffms2 and libass will need to be installed.
  • A PKGBUILD is provided for Arch distributions.
  • To use an IME, you may need to set the XMODIFIERS environment variable; e.g: XMODIFIERS=@im=fcitx

Contributing

Thank you for your interest in contributing to Ameko! Whether you're reporting or fixing bugs, adding a translation, implementing features, or starting a discussion, all contributions are welcome and appreciated.

Localization

en-GB pl de es-419 vi zh-TW

If you are interested in localizing Ameko into your language (Thank you!), please see the Crowdin project.

Code

Before submitting a pull request, please make sure your code is properly formatted:

  • C# is automatically formatted using CSharpier as part of the build process.
  • Zig should be formatted using zig fmt.

Additionally, there are some testing guidelines:

  • Unit tests are required for contributions to the Holo and AssCS projects.
  • Tests are optional, but highly appreciated, for Ameko's ViewModels.

AI-Assisted Contributions

  • Autonomous drive-by commits will not be accepted. A "human in the loop" is required.
  • Contributions containing AI-generated content must be disclosed.
    • Commits must include an Assisted-by tag naming the tool used. Examples: Assisted-by: Claude, Assisted-by: OpenAI Codex.
    • Commits must not use a Co-Authored-by tag for AI attribution. Only humans can be co-authors.
  • AI-generated unit tests are not permitted.

Development

Using JetBrains Rider or Visual Studio for development is strongly recommended.

C#

  • Make sure you have the .NET SDK installed.
  • Run dotnet restore to collect required NuGet packages.
  • To build, either click the Build button in your IDE, or run dotnet build.
  • To test, either click the Run Tests button in your IDE, or run dotnet test.
  • To build a release binary, use dotnet publish.
  • The final output for debugging and running is the Ameko project.

Zig

  • Make sure you have Zig installed.
  • You may need to build FFMS2 and libass yourself.
  • cd into the Mizuki directory to begin.
  • To build, run zig build. To run, use zig build run.
  • To test, run zig test.
  • To build a release binary, use zig build --release=safe.

Licensing

  • The Ameko application and binaries are licensed under the GNU GPL v3 license.
  • Libraries developed for Ameko are licensed under the Mozilla Public License 2.0.
  • For more information, see the LICENSE files.

About

Cross-platform editor for Advanced Substation Alpha (ASS) subtitles

Topics

Resources

Stars

33 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages