2012-04-20 12 views
15

छोड़ें मैं एक साधारण पायथन स्क्रिप्ट पर काम कर रहा हूं जो कुछ करने वाला है, फिर वीडियो फ़ाइल चलाएं, और फिर कुछ और चीज़ें करें।वीएलसी के साथ वीडियो फ़ाइल चलाएं, फिर वीएलसी

मैं अपने वीडियो फ़ाइल खेलने के लिए साथ अजगर 3.2.3 और वीएलसी एक Windows XP मशीन पर ऐसा करने के लिए मजबूर कर रहा हूँ।

मैं वर्तमान में इस कोड का उपयोग कर रहा हूँ ...

vlc_path = '\\path\\to\\vlc.exe' 
video_path = '\\path\\to\\video\\file' 
subprocess.call([vlc_path, video_path]) 

... वीएलसी खोलने के लिए और वीडियो खेलने के लिए। यह अच्छी तरह से काम करता है। हालांकि, स्क्रिप्ट वीएलसी के आगे जाने से पहले छोड़ने की प्रतीक्षा करती है। जो अच्छा है और मैं इसे इस तरह रखना चाहता हूं।

मेरा प्रश्न है: क्या वीडियो फ़ाइल चलाने के बाद वीएलसी छोड़ने का कोई तरीका है?

किसी भी मदद के लिए बहुत बहुत धन्यवाद!

+2

अतिरिक्त नियंत्रण vlc के लिए पाइथन बाइंडिंग है: http: //wiki.videolan.org/Python_bindings – bmu

+0

धन्यवाद, बीएमयू, लेकिन मुझे इसकी आवश्यकता से अधिक है। :) – Florian

उत्तर

35

काफी मजेदार है, वीएलसी इस के लिए एक कमांड लाइन का विकल्प है।

+1

धन्यवाद, यह पूरी तरह से काम किया। एक चीज जो महत्वपूर्ण लगती है वह यह है कि आप 'shell = True' सेट करते हैं। यह मेरे लिए काम करता है: 'subprocess.call ([vlc_path, video_path, '--play-and-exit', '--fullscreen'], shell = True)' – Florian

+1

@Florian। अजीब। मेरे लिए 'खोल = झूठा' काम किया, और 'सच' नहीं किया। हालांकि, आपके कार्यान्वयन के लिए धन्यवाद! – Mathias711

+0

यह मेरे लिए विंडोज 10 पर वीएलसी चलाने के लिए काम नहीं करता है। हालांकि नीचे उल्लिखित डमी आइटम को चाल चलाना था। –

0

यदि आप पाइथन में वीडियो की लंबाई जानते हैं, तो वीडियो लंबाई के बाद एक अलग थ्रेड द्वारा प्रक्रिया को मारने का सबसे अच्छा तरीका है। कहीं और, यह वीएलसी-एस कमांड लाइन विकल्पों पर निर्भर करता है। शायद आप फिल्म चलाने के बाद उसे बंद करने के लिए कह सकते हैं।

--play-and-exit, --no-play-and-exit 
          Play and exit (default disabled) 

तो, बस वीएलसी के लिए इस विकल्प को पारित:

+2

प्रक्रिया को अशुद्ध रूप से समाप्त करने के बजाय यहां कमांड लाइन विकल्प का उपयोग करना बेहतर होगा। – logain

0

कुछ भी नहीं काम करता है के अलावा vlc के बाद शुरुआत में विकल्प --ignore-config का उपयोग करके देखें http://quit अंत में

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