Last Updated or created 2023-10-05
I didn’t find an easy and working movie player for wide screen setups.
Like double/triple monitor setups.
I’ve got 3x 1920×1080 monitors connected to my battlestation.
With a resolution of 5760×1080
Simple Python code to play a movie fullscreen
# importing vlc module import vlc # creating vlc media player object media_player = vlc.MediaPlayer() # media object media = vlc.Media("movie.mp4") # setting media to the media player media_player.set_media(media) media_player.toggle_fullscreen() # start playing video media_player.play()
But trying to get this stable working, I resorted to pysimplegui
#!/usr/bin/env python3 import PySimpleGUI as sg import vlc import sys from sys import platform as PLATFORM try: movie=sys.argv[1] except: print(sys.argv[0] + " filename") exit() sg.theme('DarkBlue') layout = [[sg.Image('', size=(5760, 1080), key='-VID_OUT-')]] window = sg.Window('Triple movie player', layout, no_titlebar=True, margins=(0,0),location=(0,0), size=(5760,1080), keep_on_top=True, finalize=True,resizable=False) window.bring_to_front() window.Maximize() window.bind("<Escape>", "-ESCAPE-") window.bind("<Return>", "-ENTER-") window['-VID_OUT-'].expand(True, True) inst = vlc.Instance() list_player = inst.media_list_player_new() media_list = inst.media_list_new([]) list_player.set_media_list(media_list) player = list_player.get_media_player() if PLATFORM.startswith('linux'): player.set_xwindow(window['-VID_OUT-'].Widget.winfo_id()) else: player.set_hwnd(window['-VID_OUT-'].Widget.winfo_id()) media_list.add_media(movie) list_player.set_media_list(media_list) list_player.play() while True: event, values = window.read(timeout=1000) if event == sg.WIN_CLOSED: break if event == '-ENTER-': list_player.play() if event == '-ESCAPE-': list_player.stop() window.close() window.close()
I’ve converted some of my Vuze media to the correct resolution using kdenlive.
Kdenlive howto