This python module let you test libvlc API like the VLC video player.
You can install it easily with pip python tool.
C:\Python27\Scripts>pip2.7.exe install python-vlc
Collecting python-vlc
Downloading python-vlc-1.1.2.tar.gz (201kB)
100% |################################| 204kB 628kB/s
Installing collected packages: python-vlc
Running setup.py install for python-vlc ... done
Successfully installed python-vlc-1.1.2
Let's see a simple example with this python module:import os
import sys
import vlc
import pygame
def call_vlc(self, player):
player.get_fps()
player.get_time()
if len( sys.argv )< 2 or len( sys.argv )> 3:
print 'Help: python vlc_001.py your_video.mp4'
else:
pygame.init()
screen = pygame.display.set_mode((800,600),pygame.RESIZABLE)
pygame.display.get_wm_info()
pygame.display.get_driver()
# get path to movie specified as command line argument
movie = os.path.expanduser(sys.argv[1])
# see if movie is accessible
if not os.access(movie, os.R_OK):
print('Error: %s wrong read file: ' % movie)
sys.exit(1)
# make instane of VLC and create reference to movie.
vlcInstance = vlc.Instance()
media = vlcInstance.media_new(movie)
# make new instance of vlc player
player = vlcInstance.media_player_new()
# start with a callback
em = player.event_manager()
em.event_attach(vlc.EventType.MediaPlayerTimeChanged, \
call_vlc, player)
# set pygame window id to vlc player
win_id = pygame.display.get_wm_info()['window']
if sys.platform == "win32": # for Windows
player.set_hwnd(win_id)
# load movie into vlc player instance
player.set_media(media)
# quit pygame mixer to allow vlc full access to audio device
pygame.mixer.quit()
# start movie play
player.play()
while player.get_state() != vlc.State.Ended:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit(2)
The base of this python script is to make an instance of vlc and put into the pygame display.Another simple example:
C:\Python27>python.exe
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import vlc
>>> inst = vlc.Instance()
Warning: option --plugin-path no longer exists.
Warning: option --plugin-path no longer exists.
>>> med = inst.media_new('rain.mp4')
>>> p = med.player_new_from_media()
>>> p.play()
0
>>>