2

Je souhaite diffuser des vidéos résidant sur le serveur Web à partir d'un contrôle ExpressionMediaPlayer. Les résultats suivants dans une erreur réseau. Je crois que le problème est avec mon Uri. J'ai les vidéos dans le dossier 'ClentBin'. Quelqu'un peut-il me dire comment cela est fait?Comment diffuser des vidéos à partir du serveur Web dans Silverlight à l'aide du contrôle ExpressionMediaPlayer?

private void videoList_SelectionChanged(object sender, SelectionChangedEventArgs e) 
     { 
      var selectedVideo = (Video)videoList.SelectedItem;   
      PlaylistItem item = new PlaylistItem(); 
      item.MediaSource = new Uri(@"/ClientBin/" + selectedVideo.FilePath,   UriKind.RelativeOrAbsolute); 
      item.IsAdaptiveStreaming = false; 
      ep.Playlist.Items.Add(item); 
     } 

Merci!

Répondre

2

Il peut y avoir un certain nombre de facteurs qui contribuent à une erreur réseau dans Expression Media Player. Voici quelques contrôles de base ...

1. Vérifiez le fichier vidéo lui-même Lancez Windows Media Player, allez dans Fichier> Ouvrir une URL ... et assurez-vous que vous pouvez lire la vidéo avec l'URL absolue, juste pour exclure tout problème de base avec le serveur Web. (Notez que cela ne concerne pas si vous travaillez avec streaming adaptatif, dont il ne semble pas que vous êtes.)

2. Qu'est-ce que selectedVideo.FilePath contient-il? S'agit-il d'un nom de fichier simple (c'est-à-dire MyVideo.wmv) ou s'agit-il d'un chemin de fichier relatif? Les barres obliques vers l'avant ou vers l'arrière?

3. Essayez avec une URI statique absolue Juste pour écarter les problèmes de chemin relatif à votre application/serveur web/toute configuration de répertoire virtuel, essayez:

item.MediaSource = new Uri(@"http://mysite.com/ClientBin/MyVideo.wmv", UriKind.Absolute); 

4. Retirez le leader slash de/ClientBin/ Essayez simplement new Uri(@"ClientBin/" + selectedVideo.FilePath, UriKind.Relative); et vérifiez si le chemin relatif est correct.

Questions connexes