全屏视频跳帧,因此流被损坏(一些I帧被丢弃,导致视频重建不完整)。这是通过以下设置实现的:
Raspberry Pi 4B
Python 3.11.2
python-vlc 3.0.20123
此处找到了解决方案:使用 libVLC 忽略禁用的硬件加速
设置标志
--avcodec-hw=none
使视频正常运行。
在 2019 年的讨论中,人们担心 libvlc 没有考虑以编程方式设置的标志。但现在看来可以了。
media = vlc.Media(VIDEO_PATH)
media.add_option(':avcodec-hw=none')
在此线程中,用户讨论了 libvlc 未采用 Raspberry Pi 特定 VLC 应用程序所做的优化。我对禁用硬件加速起作用的假设是 libvlc 默认使用的默认加速在某种程度上与 RPi 不兼容。