Metadata-Version: 2.4
Name: arctan-vi
Version: 0.8.0
Requires-Dist: numpy>=2,<3
Requires-Dist: arctan-vi-livekit==0.8.0 ; extra == 'livekit'
Requires-Dist: arctan-vi-pipecat==0.8.0 ; python_full_version >= '3.11' and extra == 'pipecat'
Provides-Extra: livekit
Provides-Extra: pipecat
Summary: Arctan Voice Isolation for voice agents
Requires-Python: >=3.10, <3.15
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM

# Arctan Voice Isolation SDK

Arctan Voice Isolation is a native Rust SDK with Python bindings for realtime
speech enhancement. Authentication, encrypted model delivery, inference,
telemetry, and processor lifecycle are implemented in Rust. The Python package
contains a small public facade over the private PyO3 extension.

## Install

```bash
pip install arctan-vi
```

Set `ARCTAN_SDK_KEY`, or pass `license_key=` when constructing a model or
processor. Version 0.8.0 supports CPython 3.10-3.14 on Linux x86_64 with glibc
2.28 or newer, macOS arm64, and Windows x64.

## Process audio

```python
import numpy as np

from arctan import Processor, ProcessorConfig

processor = Processor(
    config=ProcessorConfig(sample_rate=16_000, num_channels=1),
)
audio = np.zeros((1, 160), dtype=np.float32)
enhanced = processor.process(audio)
processor.close()
```

Share one `Model` across processors for concurrent streams. Calls to a single
processor remain ordered; separate processors execute concurrently.

```python
from arctan import Model, Processor, ProcessorConfig

model = Model()
config = ProcessorConfig(sample_rate=48_000, num_channels=1)
left = Processor(model, config=config)
right = Processor(model, config=config)
```

The public core imports remain:

```python
from arctan import Model, Processor, ProcessorAsync, ProcessorConfig
```

## Framework adapters

Adapters are version-matched companion wheels installed through extras:

```bash
pip install "arctan-vi[livekit]"
pip install "arctan-vi[pipecat]"
```

The 0.7.2 import paths remain supported:

```python
from arctan.livekit import arctan_enhancer
from arctan.pipecat import arctan_enhancer
```

Direct imports are also available:

```python
from arctan.livekit.arctan_enhancer import ArctanNoiseCanceller, noise_canceller
from arctan.pipecat.arctan_enhancer import ArctanAudioFilter
```

## Native integrations

The supported native interface is the versioned `arctan_core_*` C ABI in
`crates/arctan-c-api/arctan_core.h`. The old standalone `libarctan_nc` and
`arctan_vi_*` ABI are not part of the 0.8 release.

## Development

- [Architecture](docs/architecture.md)
- [Development and testing](docs/development.md)
- [Release process](docs/releasing.md)
- [Runtime tensor contract](docs/runtime_tensor_contract.md)
- [Changelog](CHANGELOG.md)

