How to play audio file on windows from command line?

前端 未结 11 967
臣服心动
臣服心动 2020-12-10 02:41

In Windows, is there a simple way (i.e. something you could type on a single command line) to just play a couple of .mp3 files and then exit on its own?

wmplayer, f

相关标签:
11条回答
  • 2020-12-10 03:11

    This is what I did to do it:

    rem Replace the following path with your music file
    start C:\Users\Username\Desktop\your-music.mp3
    rem Replace 10 with how many seconds you want the player to run
    ping localhost -n 10 >nul
    taskkill /im wmplayer.exe
    

    Note this requires .mp3 to be associated with wmplayer.exe (Windows Media Player).

    0 讨论(0)
  • 2020-12-10 03:11

    I've found that the fastest way to play .mp3 files in Windows commandline is mpeg123

    I know it's not available on people's machine per default, but from my point of view, Microsoft's own players are not consistently available over different versions either.

    I'm using it on a project where the execution time is essential, and features like only playing certain frames makes is very useful. I find this (in my configuration) faster than the cmdmp3 and vbscript examples mentioned in this thread.

    My syntax to only play certain frames of an .mp3 file : mpg123.exe -k 2 -n 3 -q -1 -4 beep.mp3

    0 讨论(0)
  • 2020-12-10 03:12

    Old question, new answer - you could use PowerShell:

    powershell -c (New-Object Media.SoundPlayer 'c:\PathTo\YourSound.wav').PlaySync();
    
    0 讨论(0)
  • 2020-12-10 03:15

    I have used cmdmp3. Very lightweight at 28Kb.

    0 讨论(0)
  • 2020-12-10 03:17

    Use VBScript:

    Set objArgs = Wscript.Arguments
    
    if (objArgs.Count = 0) then
        Wscript.echo "I need a sound file as argument!"
        WScript.Quit 123
    end if
    Wscript.echo "Playing: " & objArgs(0) & "..."
    
    Set objPlayer = createobject("Wmplayer.OCX.7")
    
    With objPlayer  ' saves typing
        .settings.autoStart = True
        .settings.volume = 50  ' 0 - 100
        .settings.balance = 0  ' -100 to 100
        .settings.enableErrorDialogs = False
        .enableContextMenu = False
        .URL = objArgs(0)
        WScript.Sleep(10000)  ' time to load and start playing
        '.Controls.Pause()  ' stop
    End With
    
    MsgBox "if WMP is still playing, clicking OK will end it", _
        vbInformation, "WMP Demo finished"
    

    If the VBScript process ends, the Media Player ends too, you have to wait for it (I don't need it, my sounds are only some seconds long).

    I used this for my special case today: https://groups.google.com/forum/#!topic/microsoft.public.scripting.vbscript/gfOOvnN8t-U

    0 讨论(0)
  • 2020-12-10 03:20

    If you need something cross-platform, mplayer works well on linux and windows and is compatible with npm's play-sound.

    0 讨论(0)
提交回复
热议问题