2015-11-06 11 views
5

URLを使用してインターネットから直接M4A(MP4 Audio)ファイルを再生しようとしています。私はこれを達成するためにMediaFoundationでNAudioを使用してい
NAudio - MediaFoundationReader:コンストラクタがm4a-URLを(YouTube-Linkから)受け取っていません

using (var reader = new MediaFoundationReader(audioUrl)) //exception 
using (var wave = new WaveOutEvent()) 
{ 
    wave.Init(reader); 
    wave.Play(); 
} 

これは、それが働いていないWindows 8.1およびWindows 10でしかし、私のWindows 7マシン上で2つのテスト・システム上でうまく動作しますが、私は取得していますMediaFoundationReaderコンストラクタ内部からの例外です。
当初、私はArgumentOutOfRangeExceptionを取得していました。私はWMPでこのm4aファイルを再生してテストしましたが、再生できませんでした。コーデックパックをダウンロードしてインストールしました。それはWMPを手伝ってくれましたが、私のコードはまだもう一つはいえ、例外を投げていた。

タイプ 「System.Runtime.InteropServices.COMException」がチェックされない例外をNAudio.dll

で発生しました追加情報:より多くのデータが利用可能です。 ( HRESULT:0x800700EAからの例外)

何が原因で発生する可能性があり、どのように修正できますか?

+1

を確認することができます。内部の例外を調べることで、問題の原因がわかるはずです。 – jsanalytics

+0

また、Codeplexのソースコードを使用することで、問題なくデバッガを使用して 'MediaFoundationReader()'コンストラクタのコードをステップ実行することができます。私は例外を再現するために使用できるWindows7マシンにアクセスできない。 「残念なことに」私のWindows 10マシンではすべて正常に動作します。 – jsanalytics

+0

win7 sp1で再現できません。ファイルにリンクしますか? – cviejo

答えて

0

COMメソッドを実行するのに十分な特権がユーザーにないことがあります。

管理者としてアプリケーションを実行してください。いくつかの研究では

1

私はあなたのWindowsオペレーティングシステムが壊れて になったときに0X800700eaが発生するこの

を同定しました。このエラーが発生する原因は多数あります。 起動エントリが過度に多く、レジストリエラー、ハードウェア/ RAMが、断片化したファイル、不要なまたは冗長なプログラム のインストールなどがあります。

あなたが別のシステムにプログラムしてみてください、私は** **デバッグ\ WINDOWS \例外設定に移動し、すべてのExceptions_で_Breakするように設定します

+0

私はガールフレンドのwin7-systemで試しましたが、奇妙な他のエラーが発生していて、うまく動作しませんでした。おそらく、このシステムも壊れています(両方のPCは数年前です...)。 私はシステムを再インストールして、もう一度試します。このエラーは変だから...私は、破損したシステムが理由だと思います。とにかく、私は約3ヶ月で新しい、非常に良いPCを手に入れます。 ありがとうございました;) – Aldarion

関連する問題