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.2.tar.gz (19.6 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.2-py3-none-any.whl (23.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pipeless_ai-0.1.2.tar.gz
  • Upload date:
  • Size: 19.6 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.2.tar.gz
Algorithm Hash digest
SHA256 704b520d043381c790cacec48e6621ea8a120d972833769944234af281e68593
MD5 e5769896d537767e127cb4411cc3d590
BLAKE2b-256 80c49069954a00b911a0fde12d4a65bcd8ffdf5bd8ca51d39f84d53d596e59bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pipeless_ai-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 23.4 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cec09f90f19ccb876225b07cf18784e3266650c40f040453cdedcb18e8aba88f
MD5 1ec4669ec9ef44f5efe0591ff904261b
BLAKE2b-256 3f3454b216834332fc0526ce48cbc183b092770755657e9925e49121949b1164

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