home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
70.11k stars 29.17k forks source link

Dutch Piper voice is broken #115573

Open cvwillegen opened 3 months ago

cvwillegen commented 3 months ago

The problem

The Piper voices for nl_NL are unintelligible.

What version of Home Assistant Core has the issue?

core-2024.4.3

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Wyoming - Piper

Link to integration documentation on our website

https://www.home-assistant.io/integrations/piper/

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

home-assistant[bot] commented 3 months ago

piper documentation piper source

Acrobat77 commented 2 months ago

I can confirm this is also the case for the version below. It's not "just" unintelligible, it's complete gibberish and I don't mean disrespect here just to indicate that it's not a quality issue but simply not working. Like it's using the wrong sample parts of a voice.

Core: 2024.5.4, Supervisor 2024.05.1, Operating System 12.3 Frontend 20240501.1

The samples here work fine: https://rhasspy.github.io/piper-samples/ Tried with nl_NL-mls-medium and the other nl_NL variations, Tried the nl_BE-nathalie-x_low voice and no problem there.

To test I used 'Assistants' -> 'Try voice'.

I see no issue in the Piper log:

DEBUG:main:Namespace(piper='/usr/share/piper/piper', voice='nl_NL-mls-medium', uri='tcp://0.0.0.0:10200', data_dir=['/data', '/share/piper'], download_dir='/data', speaker='0', noise_scale=0.667, length_scale=1.0, noise_w=0.333, auto_punctuation='.?!', samples_per_chunk=1024, max_piper_procs=1, update_voices=True, debug=True) DEBUG:wyoming_piper.download:Downloading https://huggingface.co/rhasspy/piper-voices/resolve/v1.0.0/voices.json to /data/voices.json DEBUG:wyoming_piper.download:Loading /data/voices.json DEBUG:wyoming_piper.process:Starting process for: nl_NL-mls-medium (1/1) DEBUG:wyoming_piper.download:Checking /data/nl_NL-mls-medium.onnx DEBUG:wyoming_piper.download:Checking /data/nl_NL-mls-medium.onnx.json DEBUG:wyoming_piper.process:Starting piper process: /usr/share/piper/piper args=['--model', '/data/nl_NL-mls-medium.onnx', '--config', '/data/nl_NL-mls-medium.onnx.json', '--outputdir', '/tmp/tmpepjwxgi', '--json-input', '--speaker', '0', '--noise-scale', '0.667', '--length-scale', '1.0', '--noise-w', '0.333'] INFO:main:Ready [15:43:40] INFO: Successfully send discovery information to Home Assistant. s6-rc: info: service discovery successfully started s6-rc: info: service legacy-services: starting s6-rc: info: service legacy-services successfully started DEBUG:wyoming_piper.handler:Sent info DEBUG:wyoming_piper.handler:Sent info DEBUG:wyoming_piper.handler:Sent info DEBUG:wyoming_piper.handler:Synthesize(text='hallo, het is mooi weer vandaag!', voice=SynthesizeVoice(name='nl_NL-mls-medium', language=None, speaker=None)) DEBUG:wyoming_piper.handler:synthesize: raw_text=hallo, het is mooi weer vandaag!, text='hallo, het is mooi weer vandaag!' DEBUG:wyoming_piper.handler:input: {'text': 'hallo, het is mooi weer vandaag!'} DEBUG:wyomingpiper.handler:/tmp/tmpepjwxgi/1716126340350649564.wav DEBUG:wyoming_piper.handler:Completed request DEBUG:wyoming_piper.handler:Sent info


Switching to nl_BE-nathalie-medium:

DEBUG:wyoming_piper.handler:Synthesize(text='hallo, het is mooi weer vandaag!', voice=SynthesizeVoice(name='nl_BE-nathalie-medium', language=None, speaker=None)) DEBUG:wyoming_piper.handler:synthesize: raw_text=hallo, het is mooi weer vandaag!, text='hallo, het is mooi weer vandaag!' DEBUG:wyoming_piper.process:Stopping process for: nl_NL-mls-medium DEBUG:wyoming_piper.process:Starting process for: nl_BE-nathalie-medium (1/1) DEBUG:wyoming_piper.download:Checking /data/nl_BE-nathalie-medium.onnx DEBUG:wyoming_piper.download:Checking /data/nl_BE-nathalie-medium.onnx.json DEBUG:wyoming_piper.process:Starting piper process: /usr/share/piper/piper args=['--model', '/data/nl_BE-nathalie-medium.onnx', '--config', '/data/nl_BE-nathalie-medium.onnx.json', '--output_dir', '/tmp/tmpdy5td0y4', '--json-input', '--noise-scale', '0.667', '--length-scale', '1.0', '--noise-w', '0.333'] DEBUG:wyoming_piper.handler:input: {'text': 'hallo, het is mooi weer vandaag!'} DEBUG:wyoming_piper.handler:/tmp/tmpdy5td0y4/1716126443138706694.wav DEBUG:wyoming_piper.handler:Completed request

SixFive7 commented 2 months ago

I am having the same issue for all nl_NL models. The audio output is completely unrecognizable.

theetron commented 2 months ago

Same here, all dutch languages (nl-nl) not working. Looks like scrambled audio.

TimelessNL commented 1 month ago

I also ran into this problem, seems there is an issue with the dutch language model as is mentioned here

Those models were trained from audio books, and so they perform poorly with shorter sentences.

In my case longer sentences do work, although not really natural.