Skip to main content

A framework to build and deploy multimodal perception apps in minutes without worrying about multimedia pipelines

Project description

Pipeless Core

Pipeless is a framework to build and deploy multimodal perception apps in minutes without worrying about multimedia pipelines. Pipeless Core is the core component of the framework.

The Pipeless core is split into several components:

  • input: Receives the media streams, demux and decode the streams.
  • worker: Receives raw media frames, either audio or video frames, and processes them according to the user provided app
  • output: Receives the processed raw media frames, encodes and mux them into the proper container format for the output protocol provided by the user

System Dependencies

  • Gstreamer 1.20.3. Verify with gst-launch-1.0 --gst-version. Installation instructions here

Python dependencies

  • Poetry: find the installation instructions here

Installation

pip install pipeless-ai

Development

To test your changes run the following command from the src directory:

python -m pipeless.pipeless <component> [app_path]
  • <component> can be input, worker, output, all (default)
  • app_path is required for worker component and must be the path to the app.py (including app.py)

For simplicity, it will load a mock configuration (hardcoded) at src/pipeless/pipeless.py that you can edit for your use case. The hardcoded configuration will only be used when launching the components with the command above, it won't affect if testing with the CLI.

In order to debug, you can set the configuration log_level to DEBUG. If you find an error related to GStreamer and no usefull information has been logged, try using the env var GST_DEBUG=5 to enable GStreamer debug logs. Refer to this page for more information about GStreamer debugging.

Manual Testing

In order to test your changes, start the virtualenv:

poetry shell

After that, go to the cli directory and run poetry install to install the pipeless-ai-cli (CLI) component. Then go to the core directory and run poetry install to install the pipeless-ai module. This will override the upstream dependency from the CLi componet to use your local one.

Verify you environment by ensuring the pipeless modules are pointing to your local directories instead of the PyPi public modules:

pip list | grep pipeless

With that, you should be able to run pipeless run with your changes.

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

pipeless_ai-0.1.7.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

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

pipeless_ai-0.1.7-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

Details for the file pipeless_ai-0.1.7.tar.gz.

File metadata

  • Download URL: pipeless_ai-0.1.7.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/5.15.0-1041-azure

File hashes

Hashes for pipeless_ai-0.1.7.tar.gz
Algorithm Hash digest
SHA256 ee4209b34532b72da085a19f0718686473b2e14e27b79996b905e0a0a12229c2
MD5 12c134eaf6561ac6e4f002014535f7d0
BLAKE2b-256 af30e2d665bfaaeeaba8de3e5de370ef1af9901a12329dbc591941a4900dddd0

See more details on using hashes here.

File details

Details for the file pipeless_ai-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: pipeless_ai-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 25.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/5.15.0-1041-azure

File hashes

Hashes for pipeless_ai-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d2acf0baeda796179046ac99c1ec8ac44cf7847470d47bbae96438278f7e6d84
MD5 a2b9b6252079275f79010897a2136d5e
BLAKE2b-256 ea26a8d3a5732ef2f9aae6c63faf208be960e1151cb70af963531612c0a0032d

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