it-swarm.com.ru

Воспроизведите видео файл с VLC, затем выйдите из VLC

Я работаю над простым скриптом Python, который должен что-то делать, затем воспроизводить видеофайл, а затем делать еще кое-что.

Я вынужден сделать это на Windows XP машине с Python 3.2.3 иVLC, чтобы воспроизвести мой видеофайл.

Я в настоящее время использую этот код ...

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

... чтобы открыть VLC и воспроизвести видео. Это работает хорошо. Тем не менее, сценарий ожидает VLC, чтобы выйти, прежде чем он продолжится. Что хорошо, и я хочу, чтобы так было. 

Мой вопрос: Есть ли способ выйти из VLC сразу после воспроизведения видеофайла?

Большое спасибо за любую помощь! 

16
Florian

Как ни странно, у vlc есть опция командной строки для этого:

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

Итак, просто передайте эту опцию в vlc.

39
FatalError

Другой вариант - передать фиктивный элемент vlc://quit, например:

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

Источник: https://wiki.videolan.org/Transcode/#Completely_non-interactive_transcoding

8
Glutanimate

Лучший способ, которым я могу придумать, - убить процесс отдельным потоком после того, как длина видео прошла, если вы знаете длину видео в Python. В других местах это зависит от параметров командной строки VLC-s. Может быть, вы можете сказать ему, чтобы закрыть после воспроизведения фильма.

0
Mihnea Simian

Если ничего не работает, попробуйте использовать параметр --ignore-config в начале после vlc в дополнение к http://quit в конце

0
hammeramr