Skip to content

Piper: stream ingress uploads to allow voices larger than 16 MiB - #3

Open
WhoCares1337 wants to merge 1 commit into
home-assistant:mainfrom
WhoCares1337:piper-ingress-stream
Open

WhoCares1337 wants to merge 1 commit into
home-assistant:mainfrom
WhoCares1337:piper-ingress-stream

Conversation

@WhoCares1337

Copy link
Copy Markdown

Uploading a custom voice through the Piper web UI fails with HTTP 413 for any file over 16 MiB, which covers nearly every medium-quality voice (~60 MB). The Supervisor reads non-streamed ingress bodies with aiohttp's client_max_size (16 MiB). With ingress_stream: true, POST bodies are passed on as a stream, and that limit doesn't apply (supervisor/api/ingress.py). The web UI (Flask/Werkzeug) handles the chunked body without problems.

Tested on HA OS with a local copy of the app with ingress_stream: true: a 60.6 MB voice uploaded successfully, where 2.5.2 returns 413.

Resubmitted from home-assistant/apps#4912.

Fixes home-assistant/supervisor#7381

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Ingress uploads larger than 16 MiB fail with HTTP 413 (e.g. Piper add-on custom voice upload)

1 participant