python - kivy 将视频放在画布中?
问题描述
我想将视频放在画布内。
我在其中使用图像很好,但是当我使用视频时,它会触发一些错误Unknown <mp4> type, no loader found.
,我不知道问题出在哪里。
这是我的图像代码:
with self.canvas:
self.bg = Rectangle(source='mahrez.jpg', pos=self.pos, size=self.size)
但我想使用视频而不是图像
解决方案
kivy.core.video
您可以通过使用并使用它来设置纹理来做您想做的事情Rectangle
:
from kivy.core.video import Video as CoreVideo
.
.
.
with self.canvas:
self.bg = Rectangle(source='mahrez.jpg', pos=self.pos, size=self.size)
self.video = CoreVideo()
self.video.bind(on_frame=self.set_bg_texture)
self.video.filename = 'BigBuckBunny.mp4'
# just a delay to show that the original image is shown first
Clock.schedule_once(self.start_vid, 3)
def start_vid(self, dt):
self.video.play()
def set_bg_texture(self, *args):
self.bg.texture = self.video.texture
推荐阅读
- javascript - 更改数组中对象属性名称的值
- visual-studio - 在 Microsoft Hololens 上运行 Unity3D 动画的一般提示
- javascript - 删除完整的文档
- html - Outlook 签名图像映射有间隙
- c# - 有没有办法得到抛出异常的命名空间和类的方法
- python - Python - 200万行表中的计数器
- javascript - 将外部图像拖入 div 时如何更改默认工具提示?
- jquery - Bootstrap datepicker 总是弹出 asp.net 文本框的顶部
- swt - 如何将 SWT 对象绑定到应用程序窗口的中心?
- java - [Selenium][Java][PageObject] 如何检查列表中是否有“xyz”值(Web Element)?