2012-04-20 18 views
15

何かするはずの単純なPythonスクリプトを作成してから、ビデオファイルを再生してから、もう少し作業をします。VLCでビデオファイルを再生してからVLCを終了します

私は私のビデオファイルを再生するためにのPython 3.2.3VLCのWindows XPマシン上でこれを行うことを余儀なくしています。

私は現在、VLCを開き、動画を再生するには... ...

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

をこのコードを使用しています。それはうまく動作します。ただし、スクリプトはVLCが終了するまで終了するのを待ちます。どちらが良いですか、私はそれをそのままにしておきたいと思います。

私の質問は:ビデオファイルを再生した直後にVLCを終了する方法はありますか?

ありがとうございました!

+2

追加制御用vlcには、Pythonバインディングがあります。http: //wiki.videolan.org/Python_bindings – bmu

+0

ありがとう、bmu、でもそれ以上のものは必要です。 :) – Florian

答えて

35

はFunnily十分、VLCは、このためのコマンドラインオプションがあります。何も作品は他にvlc後に最初にオプション--ignore-configを使用してみた場合https://wiki.videolan.org/Transcode/#Completely_non-interactive_transcoding

+1

ありがとう、これは完全に働いた。重要と思われることの1つは、 'shell = True'を設定することです。これは私のために働いた: 'subprocess.call([vlc_path、video_path、 ' - 再生と終了'、 '--fullscreen']、シェル= True)' – Florian

+1

@Florian。奇妙な。私にとって 'shell = False'はうまくいっていて、' True'はうまくいきませんでした。しかし、あなたの実装に感謝! – Mathias711

+0

これは、Windows 10でvlcを実行している私にとってはうまくいきませんでした。 –

0

あなたがPythonでビデオの長さを知っていれば、私は考えることができるビデオの長さが経過した後、別のスレッドでプロセスを殺すことです。それ以外の場所では、VLCのコマンドラインオプションに依存します。たぶん、あなたは映画を再生した後に彼に話すことができます。

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

だから、ただのvlcにこのオプションを渡す:

+2

プロセスを不正に終了するのではなく、ここでコマンドラインオプションを使用する方が良いでしょう。 – logain

6

別のオプションは、例えば、ダミー項目vlc://quitを渡すことであろうhttp://quit最後に

0

vlc audio1.mp3 audio2.mp3 vlc://quit 

出典:

関連する問題