Comment lire une ressource WPF Sound File
Je suis en train de jouer un fichier son dans mon application WPF. Actuellement, j'ai l'appel suivant:
private void PlaySound(string uriPath)
{
Uri uri = new Uri(@"pack://application:,,,/Media/movepoint.wav");
var player = new MediaPlayer();
player.Open(uri);
player.Play();
}
Maintenant, si je spécifie Media/movepoint.wav
comme action de construire Content
et de le charger comme un parent ou d'un chemin de fichier absolu, il fonctionne très bien, donc je pense que cela a quelque chose à voir avec la Pack URI
mais je ne peux pas pour la vie de me comprendre quoi.
L'objectif est de stocker le fichier en tant que ressource de façon à ce qu'il n'est pas disponible dans le répertoire de sortie. Je peux vous fournir le WAV copier ou de le MP3 copie.
source d'informationauteur xximjasonxx
Vous devez vous connecter pour publier un commentaire.
J'ai essayé avec un fichier image, qui fonctionne de la même comme un fichier audio comme la mesure de l'uri est concerné, parce que c'est juste une autre ressource. J'ai utilisé le code ci-dessous qui, pour l'essentiel correspond à ce que vous avez.
Assurez-vous que votre "Médias" le dossier n'est pas imbriqué dans un autre dossier. Si elle est, vous devez inclure ce dossier.
À l'aide .NET Framework 4.0, VS2012.
Ce lien donne une assez bonne description de l'ensemble "pack" schéma des choses.
MODIFIER
Plus de recherche sur ce sujet semble indiquer que ce que vous voulez faire peut ne pas être possible avec des fichiers audio ou vidéo. L'extrait ci-dessous est tiré de la section "remarques" de cette page MSDN.
La suite semble fonctionner .NET Framework 4.5:
CameraShutter.wav
est incorporé Ressources dans mon projet (et qui réside à l'intérieur de sous-dossier Ressources, comme indiqué dans le pack d'URI).