Skip to main content

Dora Gradio UI Interface

A versatile UI interface for Dora-rs that provides text, audio, and video input capabilities using Gradio.

Features

  • Text Input: Direct text input through a chat-like interface
  • Audio Input: Real-time audio streaming in 16kHz format
  • Video Input: WebRTC camera streaming at 640x480
  • Multiple Output Channels:
    • text: For direct text messages
    • audio: For raw audio stream
    • image: For camera feed
  • Clean Interface: Simple and intuitive UI with tabbed sections
  • Auto Port Management: Automatically handles port conflicts

Installation

Using pip:

python -m venv .venv
source .venv/bin/activate
pip install -e .

Usage

1. Web Interface

The interface will be available at: http://localhost:7860

2. As a Dora Node

Create a YAML configuration:

nodes:
  - id: ui
    build: pip install -e .
    path: dora-gradio
    outputs:
      - text     # Text from chat interface
      - audio    # Raw audio stream
      - image    # Camera feed
    env:
      VIRTUAL_ENV: path to your venv   # comment this if not using venv

Run with Dora:

dora run demo.yml

3. Integration Examples

Video Processing Pipeline

nodes:
  - id: ui
    build: pip install -e .
    path: dora-gradio
    outputs:
      - image    # Camera feed

  - id: video_processor
    build: pip install -e path/to/processor
    path: video-processor
    inputs:
      video: ui/image

Audio Processing Pipeline

nodes:
  - id: ui
    build: pip install -e .
    path: dora-gradio
    outputs:
      - audio    # Raw audio stream

  - id: audio_processor
    build: pip install -e path/to/processor
    path: audio-processor
    inputs:
      audio: ui/audio

4. Demo Example

Here's a complete demo pipeline using the UI with visualization and audio processing:

nodes:
  - id: ui
    build: pip install -e .
    path: dora-gradio
    outputs:
      - text     # Text messages
      - audio    # Raw audio stream
      - image    # Camera feed

  - id: plot
    build: pip install dora-rerun
    path: dora-rerun
    inputs:
      text_input: ui/text
      audio: ui/audio
      image: ui/image

  - id: dora-vad
    build: pip install -e path/to/dora-vad
    path: dora-vad
    inputs:
      audio: ui/audio

  - id: dora-distil-whisper
    build: pip install -e path/to/dora-distil-whisper
    path: dora-distil-whisper
    inputs:
      audio: ui/audio

This demo showcases:

  • Real-time visualization with dora-rerun
  • Voice Activity Detection with dora-vad
  • Speech processing with dora-distil-whisper

Interface Features

Camera Tab

  • Real-time WebRTC video streaming
  • Fixed 640x480 resolution
  • BGR8 color format
  • Automatic timestamp synchronization

Audio and Text Input Tab

  • Chat-like interface for text input
  • Real-time audio streaming (16kHz, mono)
  • Status indicators for streaming state
  • Immediate output through respective channels

Controls

  • Send Text button for chat messages
  • Stop Server button for graceful shutdown

System Requirements

  • Python ≥ 3.10
  • Required ports:
    • 7860 (Gradio interface)

Known Limitations

  • Fixed video resolution (640x480)
  • Fixed audio sample rate (16kHz)
  • Requires port 7860 to be available

License

dora-gradio's code are released under the MIT License

Metadata

Release files for dora-gradio 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dora-gradio 0.5.0
File Size Uploaded Provenance Actions
dora_gradio-0.5.0.tar.gz 5.2 kB Without provenance Details for dora_gradio-0.5.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dora-gradio 0.5.0
File Interpreter ABI Platform Actions
dora_gradio-0.5.0-py3-none-any.whl Python 3 none any Details for dora_gradio-0.5.0-py3-none-any.whl

Total release size: 10.6 kB

Release files / dora_gradio-0.5.0.tar.gz

Download URL dora_gradio-0.5.0.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
3430c99861efb5846579b9df387da8512be93e86b25aee434a63371b4e9b7caf
BLAKE2b-256 checksum
How to use checksums
97e27809c813a63e39d450be563fa361d398cfe0bf78b93f39d0623b42c07b98
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / dora_gradio-0.5.0-py3-none-any.whl

Download URL dora_gradio-0.5.0-py3-none-any.whl
Size 5.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
181c0627efe3513c3434373109f0fcef5ab228fe400dc8cc65b6b9a0cbbba485
BLAKE2b-256 checksum
How to use checksums
8fb881bbf29a58a3f14c3a9b01b4ec22bf0da32c62631c776c2db2f59913d690
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for dora-gradio 0.5.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page