python - 有没有办法让 python-vlc 窗口承认裁剪?
问题描述
我想使用 播放视频python-vlc
。我已经完成了所有工作,并且视频播放没有任何技术问题。不过,这里有一个美学问题。我只想播放视频的一部分。如,我想在底部剪掉一点,在右边剪掉一点。我知道我可以通过调用来做到这一点MediaPlayer.video_set_crop_geometry()
,而且我已经成功地做到了。但是,实际打开的窗口是为整个视频调整的窗口,我想要的部分位于中间,周围有黑条。(如果我调用MediaPlayer.video_set_scale()
,那么裁剪出来的位与我不裁剪时的大小相同。如果我不调用video_set_scale()
,裁剪出的位会被拉伸,保持纵横比,直到它到达边缘窗口。无论如何,有黑条)。
我可以让窗口适应这个新的、更小的视频吗?最好是自动的,但是如果我必须传递我想要的大小,那也很好。
我曾尝试在不同调用之间调整顺序,但无济于事。显然python-vlc
有能力在某处调整它正在播放的窗口,因为它可以打开一个正确大小的窗口以播放常规视频,并且在调用后自动调整video_set_scale()
,但只适合原始视频,而不是裁剪的视频。
解决方案
您可能应该分享更多详细信息,例如您使用的完整代码和平台。
话虽如此,libvlc 不提供 API 来调整它所绘制的本机 Window 的大小,但您可以轻松地自己完成(例如,在 Windows 上使用用于 HWND 的 win32 API)。
推荐阅读
- javascript - 如何正确获取用户点击数据?
- python - 如何在 Pandas 中按日期列对数据集进行分组?
- php - 在 MySQL 中求和多行以显示在 ChartJS 上
- mysql - Mysql 行计数为连接表返回不正确的值
- flutter - AlertDialog 中的 Flutter NumberPicker 无法正常工作
- tcl - 数学 Critcl 函数与数学表达式
- reactjs - 需要有关反应挂钩实施的反馈
- laravel - 在laravel中采用不止一种方法路由
- javascript - TypeScript 为什么使用传统的类而不是接口?
- docker - npm install 在 github 操作 docker build 中不起作用