Technical Glossary¶
This glossary defines all technical terms used throughout the Movian documentation. Terms are organized alphabetically with cross-references to related concepts and source code locations where applicable.
A¶
API (Application Programming Interface)¶
A set of functions, protocols, and tools that allow different software components to communicate. In Movian, this primarily refers to the JavaScript APIs available to plugins for accessing native functionality.
Related Terms: ECMAScript Runtime, Plugin System
Documentation: Plugin API Reference
Architecture Layer¶
Platform-specific code abstraction layer located in src/arch/ that provides consistent interfaces for threading, file system access, and other OS-specific functionality across different platforms.
Source Location: movian/src/arch/
Related Terms: Threading Model, Platform Abstraction
Atomic Operations¶
Thread-safe operations that complete without interruption, used in Movian for reference counting and other concurrent data access patterns.
Related Terms: Threading Model, Reference Counting
B¶
Backend System¶
Pluggable content handler architecture that provides support for different media sources, protocols, and file formats. Each backend handles specific URL schemes or content types.
Source Location: movian/src/backend/
Related Terms: Media Pipeline, Service Registry
Documentation: Media System
Bitstream¶
A sequence of binary data representing encoded audio or video content. Movian includes bitstream parsing utilities for various media formats.
Related Terms: Codec, Media Pipeline
C¶
Codec¶
Software component that encodes or decodes digital media streams. Movian supports numerous audio and video codecs through its media pipeline architecture.
Related Terms: Backend System, Media Pipeline
Documentation: Codec Support
Component¶
A modular part of Movian's architecture that provides specific functionality. Components communicate through the property system and event system.
Related Terms: Property System, Event System
Documentation: Component Interaction
Condition Variable¶
Synchronization primitive used for thread coordination. Movian uses condition variables (hts_cond_t) for signaling between threads.
Source Type: hts_cond_t
Related Terms: Threading Model, Mutex
Courier (Property)¶
Thread-specific mechanism for handling property updates and callbacks in a thread-safe manner. Different courier types handle various threading scenarios.
Source Types: prop_courier_t
Related Terms: Property System, Threading Model
D¶
Demuxer¶
Component that separates multiplexed media streams into individual audio, video, and subtitle tracks for processing.
Related Terms: Media Pipeline, Codec
E¶
ECMAScript Runtime¶
JavaScript execution environment that runs plugin code. Provides sandboxed access to native Movian functionality through JavaScript APIs.
Source Location: movian/src/ecmascript/
Related Terms: Plugin System, API
Documentation: Plugin Development
Event System¶
Message-passing mechanism for handling user interactions, system events, and component communication. Events are dispatched through a central event system.
Source Location: movian/src/event.h
Related Terms: Component, Navigator
Documentation: Component Interaction
Expression System¶
Dynamic value evaluation system used in view files for data binding, conditional logic, and computed values. Supports variables, functions, and operators.
Source Location: movian/src/ui/glw/glw_view_eval.c
Related Terms: View Files, GLW
Documentation: Expression System
F¶
Frame¶
A single image in a video sequence or a complete audio sample block. Movian's media pipeline processes frames through various stages.
Related Terms: Media Pipeline, Video Decoder
G¶
GLW (OpenGL Widget)¶
Movian's custom UI rendering engine built on OpenGL. Provides a widget-based system for creating responsive, hardware-accelerated user interfaces.
Source Location: movian/src/ui/glw/
Related Terms: View Files, Skin System, Widget
Documentation: GLW Architecture
GLW Class¶
Object-oriented structure defining widget behavior in the GLW system. Each widget type has an associated GLW class with methods for rendering, layout, and event handling.
Source Type: glw_class_t
Related Terms: Widget, GLW
GLW Context (Render Context)¶
Rendering state information passed to widgets during layout and rendering operations, including transformation matrices, clipping regions, and alpha values.
Source Type: glw_rctx
Related Terms: GLW, Widget
H¶
HTTP Client¶
Built-in networking component that provides HTTP/HTTPS request capabilities to plugins and core components. Includes support for cookies, authentication, and SSL.
Source Location: movian/src/networking/
Related Terms: Plugin System, Backend System
Documentation: HTTP API
I¶
Initialization Group¶
Categorized initialization phases during application startup that ensure components are initialized in proper dependency order.
Constants: INIT_GROUP_NET, INIT_GROUP_GRAPHICS, INIT_GROUP_IPC, INIT_GROUP_API
Related Terms: Component, Lifecycle
Documentation: Application Lifecycle
L¶
Lexer¶
Component that breaks view file source code into tokens for parsing. The GLW lexer handles keywords, operators, strings, and other language elements.
Source Location: movian/src/ui/glw/glw_view_lexer.c
Related Terms: Parser, View Files
Documentation: Lexer Analysis
Lifecycle¶
The sequence of states a component goes through from creation to destruction. Includes initialization, running, and cleanup phases.
Related Terms: Component, Plugin System
Documentation: Application Lifecycle
M¶
Manifest (Plugin)¶
JSON configuration file (plugin.json) that defines plugin metadata, capabilities, dependencies, and entry points.
Related Terms: Plugin System
Documentation: Manifest Reference
Media Pipeline¶
Architecture for processing audio and video content through a series of stages including demuxing, decoding, filtering, and output.
Source Location: movian/src/media/
Related Terms: Backend System, Codec
Documentation: Pipeline Architecture
Mutex¶
Mutual exclusion synchronization primitive used to protect shared data structures from concurrent access. Movian uses hts_mutex_t for thread safety.
Source Type: hts_mutex_t
Related Terms: Threading Model, Condition Variable
N¶
Navigator¶
Core component responsible for page lifecycle management, navigation history, URL routing, and backend selection for content loading.
Source Location: movian/src/navigator.c
Related Terms: Page System, Backend System
Documentation: Component Interaction
O¶
OpenGL¶
Graphics API used by the GLW system for hardware-accelerated rendering of user interface elements.
P¶
Page System¶
Framework for managing application screens and content views. Pages represent different areas of the application interface and are managed by the Navigator.
Related Terms: Navigator, View Files
Documentation: Page API
Parser¶
Component that analyzes view file syntax and builds internal representations of UI elements and their relationships.
Source Location: movian/src/ui/glw/glw_view_parser.c
Related Terms: Lexer, View Files
Documentation: Parser Analysis
Platform Abstraction¶
Layer that provides consistent interfaces across different operating systems and hardware platforms, hiding platform-specific implementation details.
Related Terms: Architecture Layer
Plugin System¶
Architecture that allows third-party JavaScript code to extend Movian functionality by providing content sources, user interfaces, and other features.
Source Location: movian/src/plugins.c
Related Terms: ECMAScript Runtime, Manifest
Documentation: Plugin Development
Preprocessor (View File)¶
Component that processes view files before parsing, handling include directives, conditional compilation, and macro expansion.
Source Location: movian/src/ui/glw/glw_view_preproc.c
Related Terms: View Files, Parser
Documentation: Preprocessor
Property System¶
Hierarchical data model that serves as the primary communication mechanism between components. Provides thread-safe access to application state with event notifications.
Source Location: movian/src/prop/
Related Terms: Component, Threading Model
Documentation: Component Interaction
Property Tree¶
Hierarchical structure of properties that represents application state. Properties are organized in a tree with parent-child relationships.
Related Terms: Property System
R¶
Reference Counting¶
Memory management technique where objects track the number of references to them and are automatically cleaned up when the count reaches zero.
Related Terms: Property System, Threading Model
Render Context¶
See GLW Context
S¶
Sandboxing¶
Security mechanism that restricts plugin access to system resources, providing controlled access to native functionality through defined APIs.
Related Terms: Plugin System, ECMAScript Runtime
Service Registry¶
Central registry where components can register services and discover available functionality. Manages service lifecycle and status monitoring.
Source Location: movian/src/service.c
Related Terms: Component, Backend System
Documentation: Component Interaction
Skin System¶
Theming architecture that allows complete customization of the user interface through view files, stylesheets, and resource files.
Source Location: movian/glwskins/
Related Terms: View Files, Theme
Documentation: Theming System
SQLite¶
Embedded database engine used for persistent storage of plugin data, settings, and application state.
Related Terms: Storage API
Documentation: SQLite API
Storage API¶
JavaScript API that provides plugins with access to persistent data storage, including key-value stores and SQLite databases.
Related Terms: SQLite, Plugin System
Documentation: Storage API
T¶
Theme¶
Collection of visual styling definitions, resources, and configuration that determines the appearance and behavior of the user interface.
Related Terms: Skin System, View Files
Documentation: Theme Variables
Threading Model¶
Concurrency architecture that defines how Movian uses multiple threads for responsive user interfaces, background processing, and media handling.
Related Terms: Mutex, Condition Variable
Documentation: Threading Model
Thread Priority¶
Scheduling priority assigned to threads to ensure critical operations (like audio/video processing) receive appropriate system resources.
Constants: THREAD_PRIO_AUDIO, THREAD_PRIO_VIDEO, THREAD_PRIO_UI_WORKER_HIGH, etc.
Related Terms: Threading Model
U¶
UI System¶
User interface architecture built on the GLW rendering engine, providing widgets, layout management, and event handling for creating interactive interfaces.
Related Terms: GLW, View Files
Documentation: UI System & Theming
V¶
Video Decoder¶
Component responsible for decoding compressed video streams into displayable frames. Supports hardware acceleration where available.
Source Location: movian/src/video/video_decoder.h
Related Terms: Codec, Media Pipeline
View Files¶
XML-like files with .view extension that define user interface layouts, styling, and behavior using the GLW widget system.
Related Terms: GLW, Skin System, Widget
Documentation: View Files
View Loader¶
Component responsible for loading view files from the filesystem, resolving includes, and managing the view file compilation process.
Source Location: movian/src/ui/glw/glw_view_loader.c
Related Terms: View Files, Preprocessor
W¶
Widget¶
Individual UI element in the GLW system, such as containers, text labels, images, or interactive controls. Each widget type has specific properties and behaviors.
Related Terms: GLW, View Files
Documentation: Widget Reference
Cross-Reference Index¶
By Source Location¶
movian/src/arch/: Architecture Layermovian/src/backend/: Backend Systemmovian/src/ecmascript/: ECMAScript Runtimemovian/src/media/: Media Pipelinemovian/src/navigator.c: Navigatormovian/src/plugins.c: Plugin Systemmovian/src/prop/: Property Systemmovian/src/service.c: Service Registrymovian/src/ui/glw/: GLWmovian/glwskins/: Skin System
By Category¶
Core Architecture¶
Plugin Development¶
User Interface¶
Media Processing¶
System Integration¶
Glossary Version: 1.0.0
Last Updated: November 2025
Movian Version Compatibility: 4.8+
Accuracy Status: 🟢 Verified from source code analysis
This glossary is maintained alongside the Movian documentation and updated with each release. Terms marked with source locations reference specific files in the Movian codebase for detailed implementation information.