2012-03-27 12 views
5

मैं रूबी में एक स्क्रिप्ट कैसे लिख सकता हूं जो कमांड लाइन से निष्पादित होने पर एमपी 3 फ़ाइल (पृष्ठभूमि-संगीत) चलाता है?मैं एमपी 3 फ़ाइल कैसे चला सकता हूं?

मैं इस

run = "mplayer #{"/Users/bhushan/resume/m.mp3"} -ao sdl -vo x11 -framedrop -cache 16384 -cache-min 20/100" 
system(run) 

की कोशिश की लेकिन यह भी काम नहीं कर रहा है, ऊपर खिलाड़ी विशिष्ट है। क्या होगा यदि उपयोगकर्ता के पास mplayer इंस्टॉल नहीं है। आईडी वहाँ एक बेहतर तरीका है?

+0

कर यह क्या कहता है जब यह काम नहीं करता है? क्या यह कमांड लाइन से काम करता है? – rogerdpack

+0

चूंकि आप मैक पर हैं, आप '-vo x11' का उपयोग क्यों कर रहे हैं? –

+0

यह कुछ भी नहीं कहता है। वापसी मान पिछले कथन –

उत्तर

14

मैं आम तौर पर सिर्फ

pid = fork{ exec 'mpg123','-q', file } 
+8

मैक-ओएस-एक्स पिड = फोर्क {exec 'afplay', फ़ाइल} पर 'झूठी' है – Simonini

7

इस तरह का प्रयास करें: इस का उपयोग करता जूते जादू करने के लिए, यह सब है कि आप मुझे आशा है कि http://rubylearning.com/blog/2008/05/31/a-teeny-weeny-mp3-player-using-ruby-and-shoes/

#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 
1

आप अलग अलग खिलाड़ियों का उपयोग करता है गहरे लाल रंग का कोड लिख सकते हैं की जरूरत है।

उदाहरण के लिए, एक वर्ग मैं का उपयोग करें:

https://gist.github.com/2217498

बल्कि MPlayer से, एक सॉक्स या वीएलसी या कुछ और इस्तेमाल कर सकते हैं।

आपके उदाहरण में, आप हमेशा अपना कोड बढ़ा सकते हैं। हार्डकोडेड mplayer की बजाय, आप इसे एक yaml फ़ाइल से पढ़ सकते हैं, जिसे आप गतिशील रूप से बदल सकते हैं।

आप सीधे रूबी-gtk के माध्यम से gstreamer का उपयोग करने का प्रयास भी कर सकते हैं।

लेकिन याद रखें, रूबी स्वयं ऑडियो फ़ाइलों को नहीं चला सकता है।

यह अच्छा होगा अगर कोई शुद्ध रूबी प्लेयर बनाने में सक्षम होगा।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^