Command line program for playing sections of audio specified in milliseconds

家住魔仙堡 提交于 2019-12-06 07:25:38

问题


Would someone kindly recommend a command line utility that can play any section of an audio file specified in milliseconds e.g.

player -start-time=0.1234 end-time=5.6789 audio.wav

None of the audio players that I've come across seem to have this functionality. vlc supports start and end times but in seconds only, while Audacity does not appear to have much in the way of command line options.


回答1:


sox

You can use sox play with the trim effect:

play audio.wav trim START =END

Which in your case would become:

play audio.wav trim 0.1234 =5.6789

Note that the end can also be specified as a length:

play audio.wav trim 0.1234 2

Which starts playing at 0.1234 and plays 2 seconds of the file.

Also note that the offsets can be specified as number of samples by appending an s to the number.

mplayer

mplayer also supports this:

mplayer -ss START -endpos END audio.wav

ffplay from ffmpeg

ffplay uses similar input parameters but doesn't support absolute end times, so some minor arithmetic is needed:

ffplay -ss START -t $(( END - START )) audio.wav


来源:https://stackoverflow.com/questions/12122781/command-line-program-for-playing-sections-of-audio-specified-in-milliseconds

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!