Qual é a diferença entre System.Speech.Recognition e Microsoft.Speech.Recognition?

Existem dois namespaces e assemblies semelhantes para reconhecimento de fala no .NET. Estou tentando entender as diferenças e quando é apropriado usar uma ou outra.

Há System.Speech.Recognition do assembly System.Speech (em System.Speech.dll). System.Speech.dll é uma DLL principal na biblioteca de classes do .NET Framework 3.0 e posterior

Há também Microsoft.Speech.Recognition do assembly Microsoft.Speech (em microsoft.speech.dll). Microsoft.Speech.dll faz parte do UCMA 2.0 SDK

Acho os documentos confusos e tenho as seguintes perguntas:

O System.Speech.Recognition diz que é para "A tecnologia de fala da área de trabalho do Windows", isso significa que não pode ser usado em um sistema operacional de servidor ou em aplicativos de alta escala?

O UCMA 2.0 Speech SDK (http://msdn.microsoft.com/en-us/library/dd266409%28v=office.13%29.aspx ) diz que requer o Microsoft Office Communications Server 2007 R2 como pré-requisito. No entanto, fui informado em conferências e reuniões que, se não exigir recursos do OCS, como presença e fluxo de trabalho, posso usar a API de fala do UCMA 2.0 sem o OCS. Isso é verdade?

Se estou criando um aplicativo de reconhecimento simples para um aplicativo de servidor (digamos que deseje transcrever automaticamente as mensagens de voz) e não preciso de recursos do OCS, quais são as diferenças entre as duas APIs?

questionAnswers(4)

yourAnswerToTheQuestion