aes*_*ipt 6 python video vlc playback libvlc
我使用 Python VLC 在 pyqt 中构建自定义播放应用程序。我画了一个漂亮的自定义滑块来跟踪视频,但遇到了一些恼人的问题。
无论我多久告诉我的滑块更新一次,它都会出现故障(每 1/4 秒左右跳跃一次)并且看起来不稳定(只是时间线,而不是视频)。
深入研究后我了解到
media_player.get_position()
投票率相当低。它经常返回相同的值,然后在下次给出新值时跳跃很大。
所以现在我运行了一些测试指标,发现它往往每 0.25-0.3 秒更新一次。所以现在我有一个系统,它基本上存储最后一个值和最后一个新值进入的系统时间,以及返回值中的最后一个跳跃距离,并用这些东西做一些基本的数学运算,以伪造轮询之间正确的线性时间线数据,以生成非常流畅的时间线滑块。
问题是假设我每 0.25-0.3 秒的值在机器、硬件、视频帧速率等方面是一致的。
有谁知道更好的修复方法吗?
也许有一种方法可以提高 VLC 的轮询率,以便为我提供更好的数据 - 或者一些更好的数学来处理平滑?
谢谢
尝试改用libvlc_MediaPlayerPositionChanged或libvlc_MediaPlayerTimeChangedmediaplayer 事件。
| 归档时间: | 
 | 
| 查看次数: | 2492 次 | 
| 最近记录: |