Как я могу перезапустить видео (цикл) после завершения воспроизведения?Python

Программы на Python
Ответить
Anonymous
 Как я могу перезапустить видео (цикл) после завершения воспроизведения?

Сообщение Anonymous »

Я пытаюсь сделать видео, в котором пауза на первом кадре будет оставаться на 5 секунд, затем воспроизводиться до конца и перематываться назад (затем оставаться на первом кадре на 5 секунд, а затем воспроизводиться снова)
На данный момент у меня есть код, который определяет завершение воспроизведения видео, но не возвращается к началу, а просто остается на последнем кадре видео.
/>По сути, set_position(0) не работает после завершения воспроизведения видео.
import vlc
import time

# Path to your video file
video_path = "vid.mp4"

# Create VLC instance
vlc_instance = vlc.Instance('')

# Create media player
player = vlc_instance.media_player_new()

# Load the video file
media = vlc_instance.media_new(video_path)
player.set_media(media)
#player.PlaybackMode("loop")

# Register an event manager
event_manager = player.event_manager()

# Define a callback function for the EndReached event
def on_end_reached(event):
restart_video(player)

# Connect the EndReached event to the callback function
event_manager.event_attach(vlc.EventType.MediaPlayerEndReached, on_end_reached)

def restart_video(player):
print("Putting the video at the beginning")
player.set_position(0)
player.play()
time.sleep(0.5)
player.pause() # Pause the video as the beginning

time.sleep(5)
player.play()

restart_video(player)
```


Подробнее здесь: https://stackoverflow.com/questions/783 ... ne-playing
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»