semvec/pypi-packages huggingface dataset:
steer 1.2.0
Create URLS to use create google oauth2 and drive api requests.
License: MIT

# Steer
<!-- Description -->
The OAuth2 and Google Drive media upload made simple. The Steer API creates all the necessary OAuth2 URLs to authenticate in Google API. Steer also offers the possibility to create media upload URLs in Google Drive API that offers two types of media upload: simple and multipart.

## Installation
To install Steer it is needed python3 and pip the python package manager.

```
pip install steer
```

Follow the guides at <!-- docs/--> [docs](https://github.com/fernando-gap/steer/tree/main/docs) to get start with Steer.

## How it works

### OAuth2
The Steer creates OAuth2 URL according to the Google methods encountered [here](https://developers.google.com/identity/protocols/oauth2/native-app#programmatic-extraction) and Google Drive media upload [here](https://developers.google.com/drive/api/v3/manage-uploads#http_1). 

OAuth2 is a protocol that authorizes third-parties applications to access data from other platforms such as google. Let's suppose you want to use google drive to create an application that creates a folder to store its data in the user's Google Drive. 

To do so you need a permission given by Google that is your access token, and the user consent to let the user know that you will be using its Drive to store such data.

The Steer creates the URL to facilitate the Google OAuth2 authorization steps. Steer **does not** send a HTTP request instead it creates the URL to make the request by using you preferred http client such as <!-- link to requests --> [requests](https://docs.python-requests.org/en/master/), this enables the use of any *http client*.

### Drive upload
Steer also offers the option to create a *model* HTTP URL for Google Drive. This means that the Steer creates all the necessary headers, request body, params and URL to make a request right away with any *http client*.

Three methods are used to upload media according to Google Drive: simple, multipart, and resumable. Steer offers simple and multipart methods.

- The simple method can upload either metadata or media it cannot upload both.
- The multipart method can both upload metadata and media.

## License
This project is under the MIT License.
pydeepspeech 1.1.7
Mozilla's DeepSpeech transcriber in a pip installable package.
License: MIT
Requires Python: >=3.6.0


[![Actions Status](https://github.com/zackees/pydeepspeech/workflows/MacOS_Tests/badge.svg)](https://github.com/zackees/pydeepspeech/actions/workflows/push_macos.yml)
[![Actions Status](https://github.com/zackees/pydeepspeech/workflows/Win_Tests/badge.svg)](https://github.com/zackees/pydeepspeech/actions/workflows/push_win.yml)
[![Actions Status](https://github.com/zackees/pydeepspeech/workflows/Ubuntu_Tests/badge.svg)](https://github.com/zackees/pydeepspeech/actions/workflows/push_ubuntu.yml)


# pydeepspeech

  * The simpliest way to use AI to generate transcriptions from a wav file.
  * This project uses the Mozilla DeepSpeech engine built from the included demo:
    * https://github.com/mozilla/DeepSpeech-examples/tree/r0.9/vad_transcriber

## Why you need this

Mozilla's deep speech can't process long voice samples. `pydeepspeech` fixes this by "chunking" the input sound into seperate wav files that are then individualy processed. Wav files are cut along periods of detected silence, controlled by the `aggressive` parameter.

Besides this, `pydeepspeech` is probably better to use anyway because it's *much* simpler to install than Mozilla's Deepspeech because the required data models needed for `pydeepspeech` are automatically downloaded and installed on first use.


# Quick start

Console api:
```
$ pip install pydeepspeech
$ pydeepspeech --wav_file <WAVE_FILE> --aggressive 1 --out_file <TEXT_FILE>
```

-or-

```
$ pip install pydeepspeech
$ pydeepspeech --wav_file <WAVE_FILE> --out_file <TEXT_FILE> --model_dir <MY_PBMM_AND_SCORER_FILES>
```

-or-

```
$ pip install pydeepspeech
$ pydeepspeech_installmodels --pbmm <PBMM_FILE_OR_URL> --scorer <SCORER_FILE_OR_URL>
$ pydeepspeech --wav_file <WAVE_FILE> --out_file <TEXT_FILE>
```

Or in python
```
from pydeepspeech.transcribe import transcribe
transcribe(...)
```


## Optional: Create a virtual python package

Download and install virtual env:

```
# Download
curl -X GET https://raw.githubusercontent.com/zackees/make_venv/main/make_venv.py -o make_env.py
python make_env.py  # Make the environment
source activate.sh  # Enter environment
$ pip install pydeepspeech
```
  
To get back into the environment execute `source activate.sh` (if windows, you must be using git-bash)


# Testing

Testing and linting is very simple. Just run `tox` ([link](https://tox.wiki/en/latest/install.html)).
```
$ pip install tox
$ tox
```