2017-03-24 133 views
0

私はUWPを初めて使用しています。私は音声入力を録音しています(MediaCapture)。それから私はそれを再生しようとしています。MediaPlayerエラー:指定されたURLのバイトストリームタイプはサポートされていません。 (HRESULTからの例外:0xC00D36C4)

そして、私は次のエラー、私が作成

The byte stream type of the given URL is unsupported. (Exception from HRESULT: 0xC00D36C4) 

を取得していますがプレーヤーとのダブルクリックでプレーすることができMP3ファイルです。そのファイルは「OK」です。

MediaPlayerで再生しようとすると、エラーが発生します。新しいコーデックパッケージをインストールしようとしましたが、.mp3を指していました。同じエラー。私は、入力ファイルを定義するためにストリーム、StorageFile、URLメソッドを試しましたが、常に同じエラーが発生しました。私はマイクとウェブカメラを有効にしています。 (私のマイクはウェブカメラにあります)私は「ローカルマシン」に展開しています。考えられる原因を知っている人は誰ですか?ここにコードがあります。私はそれが別のPCで動作するかどうかを調べることに興味があります。

private async void RecordAndPlay() 
    { 
     string mediaFilename = "audioPRC.mp3"; 
     StorageFile mediaFile; 
     StorageFolder tempFolder; 
     MediaCapture mediaCapture; 
     MediaPlayer mediaPlayer = null; 
     LowLagMediaRecording lowLagMediaRecording; 
     MediaSource mediaSource; 
     mediaCapture = new MediaCapture(); 
     await mediaCapture.InitializeAsync(); 
     mediaCapture.Failed += OnMediaCaptureFailed; 
     tempFolder = Windows.Storage.ApplicationData.Current.TemporaryFolder; 
     mediaFile = await tempFolder.CreateFileAsync(mediaFilename, CreationCollisionOption.ReplaceExisting); 
     MediaEncodingProfile mediaEncodingProfile = MediaEncodingProfile.CreateMp3(AudioEncodingQuality.Medium); 
     lowLagMediaRecording = await mediaCapture.PrepareLowLagRecordToStorageFileAsync(
       mediaEncodingProfile, mediaFile); 
     await lowLagMediaRecording.StartAsync(); 
     // Talk into your microphone during the 10 second wait... 
     await Task.Delay(10000); 
     await lowLagMediaRecording.StopAsync(); 
     await lowLagMediaRecording.FinishAsync(); 
     lowLagMediaRecording = null; 
     mediaPlayer = new MediaPlayer { AutoPlay = false, AudioCategory = MediaPlayerAudioCategory.Media }; 
     mediaPlayer.MediaFailed += OnMediaPlayerFailed; 
     mediaPlayer.AudioCategory = Windows.Media.Playback.MediaPlayerAudioCategory.Media; 
     mediaSource = MediaSource.CreateFromStorageFile(mediaFile); 
     var mediaPlaybackItem = new MediaPlaybackItem(mediaSource); 
     mediaPlayer.Source = mediaPlaybackItem; 
     mediaPlayer.Play(); 
    } 
    private void OnMediaPlayerFailed(object sender, MediaPlayerFailedEventArgs e) 
    { Debug.WriteLine(e.ExtendedErrorCode.Message); } 
    private void OnMediaCaptureFailed(MediaCapture sender, MediaCaptureFailedEventArgs e) 
    { Debug.WriteLine("Capture failed: " + e.Message); } 

答えて

0

エンコードをwavファイルに変更したところ、すべてが機能しました。なぜmp3が失敗しているのかという疑問には本当に答えていません。変更されたコードの2行は:

 string mediaFilename = "audioPRC.wav"; 
     MediaEncodingProfile mediaEncodingProfile = MediaEncodingProfile.CreateWav(AudioEncodingQuality.Auto); 
+0

私はファイルが準備していないと思います。 – lindexi

+0

私はあなたのコードを試しますが、それは再生することができます。 – lindexi

関連する問題