«SpeechSynthesizer» не работает после публикации в веб-приложении Azure (.NET Framework 4.7)

#c# #azure #asp.net-web-api #text-to-speech #system.speech.recognition

#c# #azure #asp.net-web-api #преобразование текста в речь #system.speech.recognition

Вопрос:

Итак, я использую веб-API .NET Framework 4.7 и использую «System.Speech.dll » чтобы произнести некоторый текст, сохраните в формате WAV, конвертируйте в MP3 (используя LAME), затем добавьте в начало другого MP3 и верните обновленный MP3.

В моем местном все работает идеально. Вот фактический код: введите описание изображения здесь

Теперь, сразу после того, как я публикую веб-приложение в «Пробной» версии (пробная версия на 12 месяцев) в Azure, оно не работает, и я всегда получаю «Ошибка 502 Bad Gateway Error» (скриншот прилагается)

введите описание изображения здесь

Теперь я также проверил «eventlog.xml » файл в Azure, и обнаружил это:

введите описание изображения здесь

Я уже обновил папку «bin» и добавил «System.Speech.dll » есть через «Расширенные инструменты» в Azure. Я действительно не уверен, в чем проблема сейчас.

У меня крайний срок, поэтому я очень напряжен, может кто-нибудь, пожалуйста, помочь мне? Я был бы очень признателен за это, спасибо!

С нетерпением жду положительного ответа…

Комментарии:

1. Синтез речи основан на SAPI (Speech API), который, скорее всего, не установлен или, по крайней мере, недоступен на облачном общем хостинге. Вместо этого вам следует обратиться к API преобразования текста в речь Azure. Возможно, вам удастся заставить это работать, если у вас есть полностью выделенная виртуальная машина, но это звучит… дорого.

2. Другим вариантом является контейнер Docker — если вы заставите его работать в Docker локально, то теоретически вы сможете просто развернуть этот контейнер.

3. Ваша проблема решена? Есть ли какой-либо прогресс?

Ответ №1:

То, что сказал @CoolBots, разумно, но я все равно рекомендую вам загрузить пример кода в git, чтобы проверить, поддерживает ли служба веб-приложений azure ваш проект посредством публикации кода.

Загрузите код на github и используйте непрерывное развертывание для работы. Рекомендуется выбрать Linux и Windows для тестирования. Если тест не пройден, рекомендуется обратиться в службу поддержки на портале.

Если вышеупомянутое решение в конечном итоге вам не помогло, вы можете воспользоваться только предложениями CoolBots, и вы можете использовать docker для развертывания экономичным способом. При достаточном бюджете также возможны виртуальные машины.