Sto provando a riprodurre un file M4A (MP4 Audio) direttamente da Internet utilizzando un URL.
Sto utilizzando NAudio con il MediaFoundation per raggiungere questo obiettivo:NAudio - MediaFoundationReader: costruttore non accetta un m4a-URL consegnato (da un youtube-Link)
using (var reader = new MediaFoundationReader(audioUrl)) //exception
using (var wave = new WaveOutEvent())
{
wave.Init(reader);
wave.Play();
}
Questo funziona bene su due sistemi di test con Windows 8.1 e Windows 10. Ma sulla mia macchina Windows 7 non funziona, sto ottenendo un eccezione dall'interno del costruttore MediaFoundationReader
.
Inizialmente, ricevevo un ArgumentOutOfRangeException
. Ho provato a riprodurre questo file m4a in WMP e non è stato possibile riprodurlo. Ho scaricato un pacchetto di codec e l'ho installato. Che hanno contribuito con WMP, ma il mio codice era ancora un'eccezione, anche se un altro:
Un'eccezione incontrollato di tipo 'System.Runtime.InteropServices.COMException' si è verificato in NAudio.dll
Ulteriori informazioni: Ci sono più dati disponibili. (Eccezione da HRESULT : 0x800700EA)
Tutte le idee che cosa potrebbe causare questo e come posso risolvere il problema?
andavo a ** Impostazioni Debug \ Windows \ exception ** e configurarlo per _Break in tutte le Exceptions_. Ispezionare le eccezioni interne dovrebbe fornire un indizio migliore su quale potrebbe essere il problema. – jsanalytics
Inoltre, usando il codice sorgente di Codeplex, sono in grado di scorrere il codice per il costruttore 'MediaFoundationReader()' usando il debugger, senza problemi. Non ho accesso a una macchina Windows7 che potrei usare per riprodurre l'eccezione. "Purtroppo" tutto funziona perfettamente con il mio computer Windows 10. – jsanalytics
Non è possibile riprodurre su win7 sp1. Link al file? – cviejo