A simple Tkinter Python Package For synced audio & video playback with a real-time API.
beta 0.0.3
- From PyPi
pip install tkvideo
- If any error's:
pip install -r requirements.txt
- Or Build it normally(refer web).
- Controls Widget Added
- Timeline seeking.(slider based & button based)
- Synced audio playback.(Video is synced with audio)
- Upto any Resolution video playback(using PIL & imageio)
- TODO: youtube/hls support.
- In-player real-time audio & video edits.
- duration
- fps
- audio frame rate
- state detection
- auto resize(based on window resize)
- total frames
- current play position
- seeking(to a second or a frame)
- play/pause/stop/resume
- volume
- edits(you can edit the video & audio because moviepy & pydub are built-in)
(Note: Two buttons are the same,added both because i like the color.)
fromtkintervideoimportplayerfromtkintervideo.toolsimportControlsimporttkinterastkfromtkinterimportttkimportsv_ttkimporttimeclassApp(tk.Tk):
def__init__(self,*args,**kwargs):
super().__init__(*args,**kwargs)
sv_ttk.set_theme('dark')
self.m_widget=player.Player(self,height=200,width=300)
self.rowconfigure(0,weight=1)
self.rowconfigure(1,weight=0)
self.columnconfigure(0,weight=1)
self.m_widget.grid(column=0,row=0,sticky=tk.NSEW,padx=5,pady=5)
self.m_widget.load('output.avi')
self.controls=Controls(self,self.m_widget)
self.m_widget.bind("<<Duration>>",self.controls.update_scale)
self.controls.grid(column=0,row=1,sticky=tk.NSEW,padx=10,pady=10)
myApp=App()
myApp.mainloop()Pull requests are welcome.
