2016-04-14 138 views
-1

我目前有这个代码用于打开tkinter程序中的.mp4文件。Tkinter将视频插入窗口

import os 
from tkinter import * 

app = Tk() 
app.title('Video Player') 

Fcanvas = Canvas(bg="black", height=600, width=170) 


def snd1(): 
    os.system("C:\\Users\Burky\\Desktop\\Videos\\PermsAndCombsVideo.mp4") 

var = IntVar() 

rb1 = Radiobutton(app, text= "Play Video", variable = var, value=1, command=snd1) 
rb1.pack(anchor = W) 
Fcanvas.pack() 
app.mainloop() 

这是一件好事,虽然视频的快速时间播放器中打开了并且没有嵌入窗口内,有没有办法实现这个到主窗口,而不是它在快速的时间开辟了途径球员?

谢谢

+0

@Slayer IM是不兼容 –

回答

0

这里有一种方法可以做到这一点。这将不断更新标签图像作为指定视频的帧。如果你也想要的话,你将不得不处理声音。这应该让你开始。

import tkinter as tk, threading 
import imageio 
from PIL import Image, ImageTk 

video_name = "test.mkv" #This is your video file path 
video = imageio.get_reader(video_name) 

def stream(label): 

    for image in video.iter_data(): 
     frame_image = ImageTk.PhotoImage(Image.fromarray(image)) 
     label.config(image=frame_image) 
     label.image = frame_image 

if __name__ == "__main__": 

    root = tk.Tk() 
    my_label = tk.Label(root) 
    my_label.pack() 
    thread = threading.Thread(target=stream, args=(my_label,)) 
    thread.daemon = 1 
    thread.start() 
    root.mainloop() 
使用3.4
+0

我不断收到权限错误 –

+0

https://gyazo.com/d5564e630167522972ba07c8d035f05b –

+0

我不清楚,为什么我收到了许多错误 –