Skip to content

Conversation

@andrescera
Copy link
Member

@andrescera andrescera commented Jan 12, 2026

Summary

  • Introduces @ceralive/ceracoder TypeScript package in bindings/typescript/
  • PipelineBuilder class for generating hardware-specific GStreamer pipelines (Jetson, RK3588, N100, Generic)
  • Zod v4 schemas for config and CLI validation with proper defaults
  • Process helpers for spawning ceracoder, sending SIGHUP, writing config/pipeline files
  • Updated architecture documentation with streaming flow diagrams

Test Plan

  • bun test passes in bindings/typescript
  • All pipeline builders generate valid GStreamer launch strings
  • Config serialization produces valid INI format
  • Integration with CeraUI (separate PR)

Related

  • CeraUI integration PR will follow

Introduces a comprehensive TypeScript abstraction layer for ceracoder:

- PipelineBuilder: Generate hardware-specific GStreamer pipelines for
  Jetson, RK3588, N100, and Generic (software) hardware types
- Zod v4 schemas: Config/CLI validation with proper defaults
- Process helpers: spawn, SIGHUP reload, config/pipeline file writing
- Per-hardware source support: HDMI, Cam Link, UVC H264, MJPEG, etc.

The package enables CeraUI to dynamically build pipelines instead of
using static pipeline files, with full type safety and validation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants