semvec/pypi-packages huggingface dataset:
dora-vad 0.4.1
Dora Node for Text translating using Argostranslate
License: MIT
Requires Python: >=3.8

# Speech Activity Detection(VAD)

This is using Silero VAD.

It detects beginning and ending of voice activity within a stream of audio and returns the parts that contains activity.

There's a maximum amount of voice duration, to avoid having no input for too long.

## Input/Output Specification

- inputs:
  - audio: 8kHz or 16kHz sample rate.
- outputs:
  - audio: Same as input but truncated

## YAML Specification

```yaml
- id: dora-vad
  description: Voice activity detection. See; <a href='https://github.com/snakers4/silero-vad'>sidero</a>
  build: pip install dora-vad
  path: dora-vad
  inputs:
    audio: dora-microphone/audio
  outputs:
    - audio
```

## Reference documentation

- dora-vad
  - github: https://github.com/dora-rs/dora-hub/blob/main/node-hub/dora-vad
- Silero VAD
  - github: https://github.com/snakers4/silero-vad

## Examples

- Speech to Text
  - github: https://github.com/dora-rs/dora-hub/blob/main/examples/speech-to-text

## License

The code and model weights are released under the MIT License.
dora-ios-lidar 0.4.1
dora-ios-lidar
License: MIT
Requires Python: >=3.8

# dora-ios-lidar

## Getting started

- Install it with pip:

```bash
pip install -e .
```

- Make sure to install `record3d` app on your IOS device.
- Buy the USB connection package to start streaming on USB.

## Contribution Guide

- Format with [ruff](https://docs.astral.sh/ruff/):

```bash
ruff check . --fix
```

- Lint with ruff:

```bash
ruff check .
```

- Test with [pytest](https://github.com/pytest-dev/pytest)

```bash
pytest . # Test
```

## YAML Specification

## Examples

## License

dora-ios-lidar's code are released under the MIT License
dora-qwen2-5-vl 0.4.1
Dora Node for VLM
License: MIT
Requires Python: >=3.10

# Dora QwenVL2.5 node

Experimental node for using a VLM within dora.

## YAML Specification

This node is supposed to be used as follows:

```yaml
- id: dora-qwenvl
  build: pip install dora-qwen2-5-vl
  path: dora-qwen2-5-vl
  inputs:
    image:
      source: camera/image
      queue_size: 1
    text: dora-distil-whisper/text
  outputs:
    - text
  env:
    DEFAULT_QUESTION: Describe the image in a very short sentence.
```

## Additional documentation

- Qwenvl: https://github.com/QwenLM/Qwen-VL

## Examples

- Vision Language Model
  - Github: https://github.com/dora-rs/dora-hub/blob/main/examples/vlm
dora-reachy2 0.4.1
dora-reachy2
License: MIT
Requires Python: >=3.10

# dora-reachy2

## Getting started

- Install it with pip:

```bash
pip install -e .
```

## Contribution Guide

- Format with [ruff](https://docs.astral.sh/ruff/):

```bash
ruff check . --fix
```

- Lint with ruff:

```bash
ruff check .
```

- Test with [pytest](https://github.com/pytest-dev/pytest)

```bash
pytest . # Test
```

## YAML Specification

## Examples

## License

dora-reachy2's code are released under the MIT License
dora-pyrealsense 0.4.1
Dora Node for capturing video with Pyrealsense
License: MIT
Requires Python: >=3.8

# Dora Node for capturing video with PyRealSense

This node is used to capture video from a camera using PyRealsense.

# Installation

Make sure to use realsense udev config at https://github.com/IntelRealSense/librealsense/blob/master/doc/installation.md

You can try, the following:

```bash
wget https://raw.githubusercontent.com/IntelRealSense/librealsense/refs/heads/master/scripts/setup_udev_rules.sh

mkdir config
cd config
wget https://raw.githubusercontent.com/IntelRealSense/librealsense/master/config/99-realsense-libusb.rules

cd ..

chmod +x setup_udev_rules.sh
```

# YAML

```yaml
- id: opencv-video-capture
  build: pip install ../../opencv-video-capture
  path: opencv-video-capture
  inputs:
    tick: dora/timer/millis/16 # try to capture at 60fps
  outputs:
    - image: # the captured image

  env:
    PATH: 0 # optional, default is 0

    IMAGE_WIDTH: 640 # optional, default is video capture width
    IMAGE_HEIGHT: 480 # optional, default is video capture height
```

# Inputs

- `tick`: empty Arrow array to trigger the capture

# Outputs

- `image`: an arrow array containing the captured image

```Python
## Image data
image_data: UInt8Array # Example: pa.array(img.ravel())
metadata = {
  "width": 640,
  "height": 480,
  "encoding": str, # bgr8, rgb8
}

## Example
node.send_output(
  image_data, {"width": 640, "height": 480, "encoding": "bgr8"}
  )

## Decoding
storage = event["value"]

metadata = event["metadata"]
encoding = metadata["encoding"]
width = metadata["width"]
height = metadata["height"]

if encoding == "bgr8":
    channels = 3
    storage_type = np.uint8

frame = (
    storage.to_numpy()
    .astype(storage_type)
    .reshape((height, width, channels))
)
```

## Examples

Check example at [examples/python-dataflow](examples/python-dataflow)

## License

This project is licensed under Apache-2.0. Check out [NOTICE.md](../../NOTICE.md) for more information.
lerobot-dashboard 0.4.1
Dora Node Dashboard for LeRobot dataset recording.
License: MIT
Requires Python: >=3.9

## LeRobot Record Interface

Simple Interface that uses Pygame to display images and texts. It also manages keyboard events.
This simple interface can only display two images of the same size side by side and a text in the middle bottom of the
screen.

## YAML Configuration

````YAML
nodes:
  - id: lerobot_record
    path: record.py # modify this to the relative path from the graph file to the client script
    inputs:
      tick: dora/timer/millis/16 # update the interface every 16ms (= 60fps)

      # image_left: some image from other node 
      # image_right: some image from other node
    outputs:
      - text
      - episode
      - failed
      - end # end signal that can be sent to other nodes (sent when the window is closed)

    env:
      WINDOW_WIDTH: 1280 # window width (default is 640) 
      WINDOW_HEIGHT: 1080 # window height (default is 480)
````

## Inputs

## Outputs:

- `text` : Array containing 1 element, the text in Arrow format.
- `episode` : Array containing 1 element, the episode number in Arrow format (or -1, marks episode end).
- `failed` : Array containing 1 element, the episode number failed in Arrow format.
- `end` : Array containing 1 empty element, indicates the end of recording to the dataflow.

## License

This library is licensed under the [Apache License 2.0](../../LICENSE).
dora-pyorbbecksdk 0.4.1
Dora Node for capturing video with PyOrbbeck SDK
License: MIT
Requires Python: >=3.8

# Dora Node to communicate with Pyorbbecksdk

Please follow the installation instruction in: https://github.com/orbbec/pyorbbecsdk

## Hardware Products Supported by Python Pyorbbecksdk SDK

| **products list** | **firmware version**        |
| ----------------- | --------------------------- |
| Gemini 335        | 1.2.20                      |
| Gemini 335L       | 1.2.20                      |
| Gemini 336        | 1.2.20                      |
| Gemini 336L       | 1.2.20                      |
| Femto Bolt        | 1.0.6/1.0.9                 |
| Femto Mega        | 1.1.7/1.2.7                 |
| Gemini 2 XL       | Obox: V1.2.5 VL:1.4.54      |
| Astra 2           | 2.8.20                      |
| Gemini 2 L        | 1.4.32                      |
| Gemini 2          | 1.4.60 /1.4.76              |
| Astra+            | 1.0.22/1.0.21/1.0.20/1.0.19 |
| Femto             | 1.6.7                       |
| Femto W           | 1.1.8                       |
| DaBai             | 2436                        |
| DaBai DCW         | 2460                        |
| DaBai DW          | 2606                        |
| Astra Mini Pro    | 1007                        |
| Gemini E          | 3460                        |
| Gemini E Lite     | 3606                        |
| Gemini            | 3.0.18                      |
| Astra Mini S Pro  | 1.0.05                      |

## Contribution

Please contribute to this node if you see missing features.