web-dev-qa-db-fra.com

Jouer un son (peut-être WAV?) À partir de la commande de ligne Windows

Comment puis-je jouer un son (CPU Beep ou wav, peu importe quoi) en utilisant la cmd Windows?

23
Thiago Belem

Vous pouvez le faire en mode natif avec PowerShell. PowerShell est inclus dans Windows Vista et versions ultérieures et peut être téléchargé à partir de Microsoft pour les versions antérieures.


Fichiers Wave

PowerShell peut être utilisé pour charger la classe System.Media.SoundPlayer .NET, qui peut être utilisée pour lire un fichier wave.

(New-Object Media.SoundPlayer "C:\WINDOWS\Media\notify.wav").Play();

Si vous le souhaitez, vous pouvez l'exécuter à partir de la ligne de commande normale:

powershell -c (New-Object Media.SoundPlayer "C:\Windows\Media\notify.wav").PlaySync();

(notez que PlaySyncest utilisé dans le deuxième exemple, car la lecture asynchrone standard serait interrompue par la fermeture du processus PowerShell lors de son lancement)

Et si vous vouliez jouer seulement la première, disons, 5 secondes du son:

powershell -c (New-Object Media.SoundPlayer "C:\Windows\Media\notify.wav").Play(); Start-Sleep -s 5; Exit;

Bip

Un bip peut être facilement accompli dans la ligne de commande normale avec echo ^G (où ^G représente BEL, ASCII caractère 7, inséré avec Ctrl + G), comme décrit dans d'autres réponses. Dans un souci de complétude, voici la méthode PowerShell:

echo ^G

Oui, c'est la même chose que celle de cmdname__. echodans PowerShell est un alias (c’est-à-dire la même chose) à Write-Host, qui affiche quelque chose à l’écran (ou déclenche le son de notification Windows dans le cas de BELname__).

Une autre méthode dans PowerShell consiste à utiliser la séquence d'échappement pour BEL, plutôt que d'insérer un caractère BEL littéral avec Ctrl + G:

echo `a

` est le caractère d'échappement de PowerShell, qui modifie la signification du caractère après celui-ci. Un aéchappé indique BEL. L'avantage de cette approche est qu'elle est plus facile et plus visible lorsqu'elle est saisie dans un script.

Pour l'exécuter dans un fichier de commandes (à nouveau, Vista ou version ultérieure):

powershell -c echo `a

source

47
Bob
echo ^G

^G est CTRL + G ou Alt + 7 sur le clavier.

10
theMike

Solution de contournement (une sorte de):

1) exécuter le fichier audio

2) attendez que la piste se termine (dans mon cas ses 5 secondes) et fermez le lecteur multimédia

start wmplayer "C:\Windows\Media\Alarm10.wav" && timeout 5 && taskkill /im wmplayer.exe
3
yuliskov

Installez VLC. Utilisez la commande suivante. Ça commence vraiment vite. C’est ce que j’utilisais sous Windows 7 b/c wmplayer prend tellement de temps à charger et l’option/close a été supprimée de wmplayer.

vlc.exe --play-and-exit audio.wav
3
Mark Ribau

Si un bip clair est correct, indiquez le caractère avec la valeur 7, le caractère de cloche . Notez cependant que les bips peuvent être désactivés.

Si vous voulez autre chose, vous devrez lancer une application qui fait l'affaire.

1
Michael Madsen

Vous pourriez écrire une application console simple prenant le fichier son (ou son identifiant) comme argument et appelée PlaySound

1
John Knoeller

CmndPlayWAV.jar est une solution très légère qui fonctionne également sous Linux et OS/X. Il a un son intégré si aucun paramètre n'est spécifié ou vous pouvez donner le chemin complet à un fichier .wav. Incidemment, vous pouvez toujours créer un message audio .wav à utiliser avec Windows Recorder.

1
budrow1138

(Alors qu’un vieux fil, les gens le trouveront lors d’une recherche). Je vois que quelqu'un a déjà recommandé VLC. Je l'utilise pour jouer un son dans Windows sans rien de visible en utilisant les paramètres: "c:\Program Files (x86)\videolan\vlc\vlc.exe" --qt-start-minimized --play-and-exit "c:\Program Files (x86)\videolan\vlc\Windows Exclamation.wav "

L'addition principale au commentaire précédent est --qt-start-minimized. Les chemins et les guillemets sont juste pour illustrer une utilisation typique. J'ai utilisé cette inchangé dans XP, 7, 10; Je m'attends à ce que Vista et 8.x fonctionnent aussi.

1
pol098

Vous pouvez utiliser fmedia pour lire un fichier son depuis un terminal Windows:

fmedia file.mp3

Cette commande démarrera la lecture de file.mp3 au premier plan et se fermera à la fin de la lecture du fichier.

Si vous souhaitez le faire en arrière-plan, ajoutez le commutateur --background à votre commande:

fmedia file.wav --background

Cette commande lancera un nouveau processus en arrière-plan et se détachera immédiatement de votre console.

fmedia est une application portable (fonctionne sans installation) et consomme très peu de ressources système. En outre, son temps de démarrage est instantané.

P.S. Utilisez la commande fmedia.exe --install pour l'ajouter à votre variable d'environnement %PATH%. Sinon, vous devez l'exécuter avec un chemin complet, par exemple. D:\fmedia\fmedia.exe.

0
def

Sur XP je le fais

start /min mplay32 /play /close %WINDIR%\media\tada.wav

Ce n'est pas idéal mais c'est vraiment facile et ça marche.

J'utilise mplayer pour cela. Un peu exagéré, car il peut lire presque tous les fichiers multimédias. Les versions récentes de Windows peuvent être trouvées à spirton , à partir de 2013. Exemple d'utilisation:

mplayer c:\windows\media\chimes.wav

Vous devez ajouter mplayer.exe à votre CHEMIN (voir Que sont PATH et d’autres variables d’environnement, et comment puis-je les définir ou les utiliser? ? ou Comment ajouter en permanence une entrée dans la variable PATH du système, via la ligne de commande? . )

0
n611x007