Skip to main content

The graph-based video processing framework

Project description

LiveSync

The graph-based video processing framework for building real-time video applications. LiveSync provides a flexible node system for creating both synchronous and asynchronous media processing pipelines.

Installation

We recommend using rye for installation:

rye add livesync-io

Alternatively, you can use pip:

pip install livesync-io

Quick Start

Here's a simple example of a video recording pipeline:

from livesync import Graph
from livesync.prebuilt.nodes import WebcamNode, FrameRateNode, VideoRecorderNode
from livesync.prebuilt.callbacks import NodeMonitoringCallback

# Create a processing graph
workflow = Graph()

# Configure nodes
webcam = WebcamNode(name="webcam", device_id=0, fps=30)
frame_rate = FrameRateNode(name="frame_rate", fps=10)
recorder = VideoRecorderNode(name="video_recorder", filename="output.mp4", fps=10)

# Build pipeline
workflow.add_node(webcam)
workflow.add_node(frame_rate)
workflow.add_node(recorder)

workflow.add_edge(webcam, frame_rate)
workflow.add_edge(frame_rate, recorder)

# Execute pipeline
with workflow.compile() as runner:
    try:
        run = runner.run(callback=NodeMonitoringCallback())
        print(run)
    except KeyboardInterrupt:
        print("\nKeyboardInterrupt: Stopping runner.")

Features

  • Graph-Based Architecture: Build complex processing pipelines using a simple, intuitive DAG structure
  • Real-Time Processing: Optimized for handling continuous data streams with minimal latency
  • Flexible Node System: Create custom processing nodes or use pre-built ones for common media operations
  • Async-First Design: Leverages Python's asyncio for efficient concurrent processing

Requirements

  • Python 3.10 or higher
  • OpenCV Python
  • FFmpeg
  • gRPC tools (for remote processing)

Documentation

For detailed documentation and examples, visit our documentation site.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

LiveSync is developed and maintained by OS Designers, Inc. For support, feature requests, or bug reports, please open an issue on our GitHub repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

livesync_io-0.2.1.tar.gz (33.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

livesync_io-0.2.1-py3-none-any.whl (38.5 kB view details)

Uploaded Python 3

File details

Details for the file livesync_io-0.2.1.tar.gz.

File metadata

  • Download URL: livesync_io-0.2.1.tar.gz
  • Upload date:
  • Size: 33.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.3

File hashes

Hashes for livesync_io-0.2.1.tar.gz
Algorithm Hash digest
SHA256 089885502741c8abda084bebc97cea4396ae2907464a5e8735a69bcfa5bad718
MD5 e691f3862104c324ccb0b21934a69bcf
BLAKE2b-256 31cb04626addd224331a763b68a5a2193ddef11b60462b6af3eaa5d069a52aa9

See more details on using hashes here.

File details

Details for the file livesync_io-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: livesync_io-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 38.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.3

File hashes

Hashes for livesync_io-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 21424031db8060d18250e6041c51a6043b770a0c9a36e312626fd8b01fa373eb
MD5 9489be1e27e1e492b11aa7ec862bf180
BLAKE2b-256 0319832ff2776d0e0c8004cf3b214a37db3f256eab6866d2e9f2fc3155843031

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page