我可以帮忙翻译一下关于IT技术的内容。您想了解如何在命令行下使用Ruby编写脚本来播放MP3文件(背景音乐)吗?
我尝试过以下方式:
run = "mplayer #{"/Users/bhushan/resume/m.mp3"} -ao sdl -vo x11 -framedrop -cache 16384 -cache-min 20/100"
system(run)
但是它也没有起作用,上面是针对特定播放器的。如果用户没有安装mplayer怎么办?有更好的方法吗?
我可以帮忙翻译一下关于IT技术的内容。您想了解如何在命令行下使用Ruby编写脚本来播放MP3文件(背景音乐)吗?
我尝试过以下方式:
run = "mplayer #{"/Users/bhushan/resume/m.mp3"} -ao sdl -vo x11 -framedrop -cache 16384 -cache-min 20/100"
system(run)
但是它也没有起作用,上面是针对特定播放器的。如果用户没有安装mplayer怎么办?有更好的方法吗?
通常我只是这样做
pid = fork{ exec 'mpg123','-q', file }
#my_mp3player01.rb
Shoes.app do
button( 'play' ){ @v.play }
button( 'pause' ){ @v.pause }
button( 'stop' ){ @v.stop }
@v = video "C:/rubyprograms/mp3player/ruby.mp3"
end
你可以编写使用不同播放器的 Ruby 代码。
例如,我使用的一个类:
https://gist.github.com/2217498
与其使用mplayer,可以使用sox或vlc或其他工具。
在您的示例中,您可以随时扩展您的代码。与硬编码的mplayer不同,您可以从yaml文件中读取它,这样您就可以动态更改它。
您还可以尝试直接通过ruby-gtk使用gstreamer。
但请记住,Ruby本身无法播放音频文件。
如果有人能够创建一个纯Ruby播放器,那将是很酷的。
这是我如何使用jruby和外部jar播放它们的方法:https://github.com/rdp/jruby-swing-helpers/blob/master/spec/play_mp3_audio.spec.rb
-vo x11
呢? - Michael Kohl