Получить сырой голос из речи - BotBuilder v4
Работая над Bot Builder, я ищу решение, в котором я мог бы получить речевую / аудио речь в реальном времени от говорящего, который говорил с ботом как приложение. Является ли это возможным? Ниже мой код.
public async Task OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken = default(CancellationToken))
{
if (turnContext.Activity.Type == ActivityTypes.Message)
{
// Get the conversation state from the turn context.
var state = await _accessors.CounterState.GetAsync(turnContext, () => new CounterState());
// Bump the turn count for this conversation.
state.TurnCount++;
// Set the property using the accessor.
await _accessors.CounterState.SetAsync(turnContext, state);
// Save the new turn count into the conversation state.
await _accessors.ConversationState.SaveChangesAsync(turnContext);
Activity activity = new Activity();
activity.Text = turnContext.Activity.Text;
activity.Speak = turnContext.Activity.Speak;
await turnContext.SendActivityAsync(activity.Text,activity.Speak,"acceptingInput",cancellationToken);
}
else
{
await turnContext.SendActivityAsync($"{turnContext.Activity.Type} event detected");
}
}
Обратите внимание, что я разрабатываю бота, который получит голос (из канала cortana) и преобразует его в.wav.
1 ответ
updated 2019-02-18
Вы можете использовать такие платформы, как botservice / cortana, чтобы сделать текст в речь и речь в текст. (Навык Cortana - это голосовой чат-робот.)
Попробуйте это
https://docs.microsoft.com/en-us/azure/bot-service/?view=azure-bot-service-4.0
https://www.youtube.com/watch?v=vCgqZPbQBQk (бесстыдный плагин)
Однако то, что вы предлагаете, чтобы получить "сырой голос" с помощью этих инструментов, не поддерживается из-за проблем конфиденциальности. Внутренне эти данные защищены, недолговечны и временны. По сути, вы создаете своего собственного агента, чтобы открыть микрофон, записать звук, а затем отправить его на обработку в речевую службу. (Ваше приложение будет нести ответственность за управление и защиту этих данных.)