2016-09-24 1 views
1

私はVS 2015でraspberri pi 3のUWPで作業しています。mediaPlayerオブジェクトに問題があります。それは正しく動作しますが、各ファイルの先頭と末尾にノイズがあります。小さなMP3(または他のコーデック)ファイルを1つずつ再生する必要があります。各ファイルの間に2つのノイズが聞こえます。どの身体にも解決策があります。私は自分のPCのファイルをチェックしましたが、そこにノイズはありません。これらのノイズはUWPで起こります。コードは以下の通りである:オーディオ停止後iotメディアプレーヤーのノイズ

+0

これらのノイズがUWPで発生すると言うと、実際にはノイズはIoTデバイスでのみ発生するのですか? – Jackie

+0

他のIOTデバイスではチェックしませんでしたが、RPIでしか発生しません。私のデスクトップ上では決して起こらない。 –

答えて

0
async Task PlayVoice() 
    { 
     MediaPlayer player = BackgroundMediaPlayer.Current; 
     player.AutoPlay = true; 
     player.RemoveAllEffects(); 
     player.MediaEnded += MediaPlayer_Loop; 
     player.Volume = 1; 
     player.SetUriSource(new Uri("ms-appx:///Assets/Sound/" + f[vc] + ".mp3")); 
      vc++; 
    } 

    void MediaPlayer_Loop(MediaPlayer player, object e) 
    { 
     if (player == null) 
      return; 
     if (vc >= f.Length) 
      return; 
     player.SetUriSource(new Uri("ms-appx:///Assets/Sound/" + f[vc] + ".mp3")); 
     vc++;   
    } 

及び下記のものを開始する前に、そこにそれらの間にギャップがあり、それはリスナーに不快感の源です。 items in a MediaPlaybackList are rendered using gapless playbackがあるため、MediaPlaybackListを使用できます。このようなコード:また

void PlayBackList() 
{ 
    MediaPlaybackList mediaPlaybackList; 
    MediaSource mediaSource; 
    MediaPlaybackItem mediaPlaybackItem; 

    MediaElement mediaElement = new MediaElement(); 

    mediaPlaybackList = new MediaPlaybackList(); 

    for (vc = 0; vc < f.Count; vc++) 
    { 
     mediaSource = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/Sound/" + f[vc] + ".wma")); 
     mediaPlaybackItem = new MediaPlaybackItem(mediaSource); 
     mediaPlaybackList.Items.Add(mediaPlaybackItem); 
    } 

    mediaPlaybackList.AutoRepeatEnabled = true; 
    mediaElement.SetPlaybackSource(mediaPlaybackList); 
    mediaElement.AutoPlay = true; 
    mediaElement.Play(); 

} 

は、問題は音が出力される直前に音声出力が停止された直後に、大声でポップとして現れるか、をクリックします。これは、標準のDACではなく、BCM2835 CPUのPWM出力が使用されているためです。 PWM機能が作動すると、出力電圧が急激に上昇し、ポップ音が鳴ります。より詳細な説明はhereです。

+0

あなたの答えはリタありがとうございます。しかし、私は新しい問題に直面しました。ポップ音はほぼ解決しましたが、上記のようにコードをプレイリストに変更した後、再生していないファイルがいくつかあります。再生はうまく始まりますが、小さなファイルに達するとそれ以上再生されません。 –

+0

"Small"?どのくらい?私のテストでは、最小のファイルは96KBです。 –

関連する問題