module

Emerald::Docs

The Emerald::Docs module is the authoritative technical reference and documentation guide.

Learning Tracks & Topic Index

The documentation is paced into 4 distinct tracks:

1. Architecture (ARCHITECTURE)

Submodule Title Description
FfiBindings LibVLC C-FFI Architecture Low-overhead direct C bindings, memory management, and platform discovery.
ZeroCopyRendering Zero-Tear Double-Buffered Memory Pipeline Decoupling asynchronous VLC decoder threads from Godot's main graphics loop.

2. Getting started (GETTING_STARTED)

Submodule Title Description
Installation Installation & Environment Setup Adding Emerald to your shard.yml and configuring the LibVLC environment.
Introduction Introduction to Emerald High-performance LibVLC integration and media player nodes for Lapis (Godot 4 in Crystal).

3. Nodes (NODES)

Submodule Title Description
AudioPlayer EmeraldAudioPlayer (Audio Node) Lightweight Godot Node for music, dialogue, sound effects, and online radio streams.
VideoPlayer EmeraldVideoPlayer (Control UI Node) High-level Godot Control node for video cutscenes, in-game UI players, and streaming video.
VideoPlayer3D EmeraldVideoPlayer3D (3D In-World Node) Godot Node3D for rendering video on 3D television sets, cinema displays, and billboards.

4. Premium features (PREMIUM_FEATURES)

Submodule Title Description
AudioEqualizer 10-Band Graphic Equalizer Shaping audio frequencies with standard presets and manual decibel amplification.
MetadataInspection Metadata & Tag Inspection Inspecting duration, ID3/Vorbis/MP4 tags, cover art, and stream characteristics.
MultiTrackMedia Multi-Track Audio & Video Streams Selecting alternate language audio tracks, commentary, and multi-angle video streams.
SubtitlesAndSPU Subtitles & Closed Captions (SPU) Selecting embedded subtitle tracks, adding external SRT/VTT files, and adjusting timing delays.

Class methods

topic_01_quick_start

Quick-Start Commands: Essential commands for building, running, and testing.

Emerald Quick Start:

make docs        # Build offline HTML documentation site in docs/
make test        # Execute specifications and test suites
make all         # Build and verify all targets
Source
topic_02_reading_paths

Learning Tracks & Reading Paths: Curated reading order from beginner to advanced.

Structured Learning Tracks

1. Architecture (ARCHITECTURE)
  • ARCHITECTURE::FfiBindings: LibVLC C-FFI Architecture — Low-overhead direct C bindings, memory management, and platform discovery.
  • ARCHITECTURE::ZeroCopyRendering: Zero-Tear Double-Buffered Memory Pipeline — Decoupling asynchronous VLC decoder threads from Godot's main graphics loop.
2. Getting started (GETTING_STARTED)
  • GETTING_STARTED::Installation: **Installation & Environment Setup** — Adding Emerald to your shard.yml and configuring the LibVLC environment.
  • GETTING_STARTED::Introduction: Introduction to Emerald — High-performance LibVLC integration and media player nodes for Lapis (Godot 4 in Crystal).
3. Nodes (NODES)
  • NODES::AudioPlayer: EmeraldAudioPlayer (Audio Node) — Lightweight Godot Node for music, dialogue, sound effects, and online radio streams.
  • NODES::VideoPlayer: EmeraldVideoPlayer (Control UI Node) — High-level Godot Control node for video cutscenes, in-game UI players, and streaming video.
  • NODES::VideoPlayer3D: EmeraldVideoPlayer3D (3D In-World Node) — Godot Node3D for rendering video on 3D television sets, cinema displays, and billboards.
4. Premium features (PREMIUM_FEATURES)
  • PREMIUM_FEATURES::AudioEqualizer: 10-Band Graphic Equalizer — Shaping audio frequencies with standard presets and manual decibel amplification.
  • PREMIUM_FEATURES::MetadataInspection: **Metadata & Tag Inspection** — Inspecting duration, ID3/Vorbis/MP4 tags, cover art, and stream characteristics.
  • PREMIUM_FEATURES::MultiTrackMedia: **Multi-Track Audio & Video Streams** — Selecting alternate language audio tracks, commentary, and multi-angle video streams.
  • PREMIUM_FEATURES::SubtitlesAndSPU: **Subtitles & Closed Captions (SPU)** — Selecting embedded subtitle tracks, adding external SRT/VTT files, and adjusting timing delays.
Source
topic_03_table_of_contents

Master Table of Contents: Complete hierarchical topic index.

Complete Documentation Index

ARCHITECTURE
  • ARCHITECTURE::FfiBindings: LibVLC C-FFI Architecture — Low-overhead direct C bindings, memory management, and platform discovery.
  • ARCHITECTURE::ZeroCopyRendering: Zero-Tear Double-Buffered Memory Pipeline — Decoupling asynchronous VLC decoder threads from Godot's main graphics loop.
GETTING_STARTED
  • GETTING_STARTED::Installation: **Installation & Environment Setup** — Adding Emerald to your shard.yml and configuring the LibVLC environment.
  • GETTING_STARTED::Introduction: Introduction to Emerald — High-performance LibVLC integration and media player nodes for Lapis (Godot 4 in Crystal).
NODES
  • NODES::AudioPlayer: EmeraldAudioPlayer (Audio Node) — Lightweight Godot Node for music, dialogue, sound effects, and online radio streams.
  • NODES::VideoPlayer: EmeraldVideoPlayer (Control UI Node) — High-level Godot Control node for video cutscenes, in-game UI players, and streaming video.
  • NODES::VideoPlayer3D: EmeraldVideoPlayer3D (3D In-World Node) — Godot Node3D for rendering video on 3D television sets, cinema displays, and billboards.
PREMIUM_FEATURES
  • PREMIUM_FEATURES::AudioEqualizer: 10-Band Graphic Equalizer — Shaping audio frequencies with standard presets and manual decibel amplification.
  • PREMIUM_FEATURES::MetadataInspection: **Metadata & Tag Inspection** — Inspecting duration, ID3/Vorbis/MP4 tags, cover art, and stream characteristics.
  • PREMIUM_FEATURES::MultiTrackMedia: **Multi-Track Audio & Video Streams** — Selecting alternate language audio tracks, commentary, and multi-angle video streams.
  • PREMIUM_FEATURES::SubtitlesAndSPU: **Subtitles & Closed Captions (SPU)** — Selecting embedded subtitle tracks, adding external SRT/VTT files, and adjusting timing delays.
Source

Nested types