Je rencontre des problèmes avec un AudioGraph dans une application UWP. Mon problème est que lorsque j'ajoute ajouter une connexion sortante à mon nœud de périphérique d'entrée, une exception est générée avec HRESULT: 0x88960001. En utilisant l'essai et l'erreur J'ai compris que le problème est avec le profil MediaEncoding que j'ai défini sur le noeud d'entrée et de sortie ... mais j'ai maintenant 2 paramètres ne fonctionnent que sur une machine et l'autre ne fonctionne que sur une autre machine ... J'avais besoin de l'audio pour être Single Channel, échantillon de 16 bits avec un échantillon de 16K en PCM.UWP AudioGraph installation ne fonctionne pas dans tous les périphériques, HRESULT: 0x88960001 lancé sur AddOutgoingConnection
Le code que j'utilise est assez simple et était basé sur des samples qui existent en ligne, le truc c'est que ça fonctionne seulement sur certains micros et pas d'autres ... J'avais besoin d'être générique et avoir toujours la même sortie que je peux entrer cela à mon point de terminaison de service.
je quittais les 2 paramètres AudioEncodingProperties il (l'un d'eux en commentaire)
var result = await AudioGraph.CreateAsync(
new AudioGraphSettings(AudioRenderCategory.Media));
if (result.Status == AudioGraphCreationStatus.Success)
{
this.graph = result.Graph;
var microphone = await DeviceInformation.CreateFromIdAsync(
MediaDevice.GetDefaultAudioCaptureId(AudioDeviceRole.Default));
// Low gives us 1 channel, 16-bits per sample, 16K sample rate.
var outProfile = MediaEncodingProfile.CreateWav(AudioEncodingQuality.Low);
//outProfile.Audio = AudioEncodingProperties.CreatePcm(16000, 1, 16);
outProfile.Audio = AudioEncodingProperties.CreatePcm(44100, 2, 32);
var inProfile = MediaEncodingProfile.CreateWav(AudioEncodingQuality.Low);
//inProfile.Audio = AudioEncodingProperties.CreatePcm(16000, 1, 16);
inProfile.Audio = AudioEncodingProperties.CreatePcm(44100, 2, 32);
var outputResult = await this.graph.CreateFileOutputNodeAsync(file,
outProfile);
if (outputResult.Status == AudioFileNodeCreationStatus.Success)
{
this.outputNode = outputResult.FileOutputNode;
var inputResult = await this.graph.CreateDeviceInputNodeAsync(
MediaCategory.Speech,
inProfile.Audio,
microphone);
if (inputResult.Status == AudioDeviceNodeCreationStatus.Success)
{
//EXEPTION IS THROWN HERE
inputResult.DeviceInputNode.AddOutgoingConnection(
this.outputNode);
this.graph.Start();
}
}
}
else
{
throw new Exception("Could not create AudioGraph");
}
Merci les gars pour notre aide
Probablement la qualité 16Khz n'est pas supportée partout, mais la qualité CD ou DAT sera d'un autre côté. La solution serait de rééchantillonner votre audio avant de l'exporter. – Aybe