semvec/pypi-packages huggingface dataset:
aec-audio-processing 1.0.1
AEC(Acoustic Echo Cancellation) Audio Processing Module
Requires Python: >=3.11
Keywords: acoustic echo cancellation, webrtc audioprocessing, voice activity detection, noise suppression, automatic gain control

# AEC Audio Processing Module

A Python module for real-time audio processing using WebRTC technology, optimized and maintained by TheDeveloper. This package provides an easy-to-use interface for audio processing capabilities including echo cancellation, noise suppression, and automatic gain control.

## Features

- **Acoustic Echo Cancellation (AEC)**: Removes echo from audio streams
- **Noise Suppression (NS)**: Reduces background noise
- **Automatic Gain Control (AGC)**: Automatically adjusts audio levels

## Requirements
+ swig
+ meson
+ compile toolchain
+ python3

## Installation

You can install the package directly from PyPI:

```bash
pip install aec-audio-processing
```

## Basic Usage

### Simple Audio Processing
```python
from aec_audio_processing  import AudioProcessor

# Initialize with all features enabled
ap = AudioProcessor(enable_aec=True, enable_ns=True, enable_agc=True)
ap.set_stream_format(16000, 1)      # 16kHz mono

# Process 10ms of audio data
audio_10ms = b'\0' * 160 * 2        # 10ms, 16000 sample rate, 16 bits, 1 channel
audio_out = ap.process_stream(audio_10ms)

# Check if voice was detected
if ap.has_voice():
    print("Voice detected!")
```

### Configuration Options

```python
from aec_audio_processing  import AudioProcessor

# Initialize with specific features
ap = AudioProcessor(
    enable_aec=True,    # Echo cancellation
    enable_ns=True,     # Noise suppression  
    enable_agc=True,    # Automatic gain control
    enable_vad=True     # Voice activity detection
)

# Set audio format
ap.set_stream_format(
    sample_rate_in=16000,      # Input sample rate (Hz)
    channel_count_in=1,        # Input channels
    sample_rate_out=16000,     # Output sample rate (Hz) 
    channel_count_out=1        # Output channels
)

# Set reverse stream for echo cancellation
ap.set_reverse_stream_format(16000, 1)

# Set stream delay for echo cancellation
ap.set_stream_delay(50)  # 50ms delay


# Check feature status
print(f"AEC enabled: {ap.aec_enabled()}")
print(f"NS enabled: {ap.ns_enabled()}")
print(f"AGC enabled: {ap.agc_enabled()}")
```
coordinate-projector 0.0.15
Project points from one projection to another using pyproj
Requires Python: <4,>=3.11

# Coordinate Projector

[![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit)

This is the Norwegian Geotechnical Institute (NGI) Python package for projecting coordinates. 
It is a small shim on top of the library [pyproj](https://github.com/pyproj4/pyproj) that again is an interface to 
 [PROJ](https://proj.org/).  

References:

Latest releases see [CHANGES.md](CHANGES.md)

# Installation (end user) 

```bash

pip install coordinate-projector

```

## Basic usage

### Project a point

```python
from coordinate_projector import Projector

projector = Projector()
 
from_srid = "4326"
to_srid = "3857"

# Paris Lat(48.8589506) Lon(2.2768485) EPSG:4326
from_east, from_north = 2.2768485, 48.8589506 

projected_east, projected_north = projector.transform(from_srid, to_srid, from_east, from_north)

# Paris Lat(6250962.06) Lon(253457.62) EPSG:3857 is in metres - 2D projection
assert abs(projected_east - 253457.62) <= 0.01
assert abs(projected_north - 6250962.06) <= 0.01 

print(f"{projected_east=}, {projected_north=}")
# projected_east=253457.6156334287, projected_north=6250962.062720417
```

# Getting Started developing

1. Software dependencies

   - Python 3.10 or higher
   - uv
   - Ruff code formatter

2. Clone this repository

3. Install

   `uv sync --all-extras --dev`



# Build and Test

Run in the project root folder: 

    uv run pytest 

Build the package wheel: 

    uv build

# Publish

Publish the package to PyPi:

    uv publish --token ${PYPI_TOKEN}

# TODOs

- Handle lines
- Handle polygons

# Contribute

Please start by adding an issue before submitting any pull requests.