refactor: player to a class

This commit is contained in:
Justin Lin
2024-03-14 13:57:34 +08:00
parent 854b701477
commit 05126ed47b

View File

@@ -1,31 +1,38 @@
import vlc
import time
# Path to your video file
video_path = "/home/wancat/mind-blowing.mp4"
# Creating a VLC instance
player = vlc.Instance()
class Player:
def __init__(self, video_path):
# Creating a VLC instance
player = vlc.Instance()
# Creating a Media Player
self.media_player = player.media_player_new()
# Creating a new Media
media = player.media_new(video_path)
# Setting media to media player
self.media_player.set_media(media)
# Creating a Media Player
media_player = player.media_player_new()
def play(self):
self.media_player.play()
# Creating a new Media
media = player.media_new(video_path)
def get_length(self):
return self.media_player.get_length()
# Setting media to media player
media_player.set_media(media)
# Play the media
media_player.play()
# Wait for the video to play
time.sleep(10) # Waits for 5 seconds; adjust or use a different method to wait for the video to finish
# Stop playing
media_player.stop()
def stop(self):
self.media_player.stop()
# Note: The time.sleep() here is just to prevent the script from ending immediately.
# For a real application, you'll need a more robust way to check if the video is still playing.
# This could be done by polling the media player's state or setting up event handlers.
# Path to your video file
if __name__ == '__main__':
video_path = "/home/wancat/mind-blowing.mp4"
player = Player(video_path)
player.play()
time.sleep(0.1)
print(player.get_length())
time.sleep(5)
player.stop()