播放视频时 OMXPlayer 卡住

Posted

技术标签:

【中文标题】播放视频时 OMXPlayer 卡住【英文标题】:OMXPlayer freezes when playing video 【发布时间】:2016-08-31 09:53:52 【问题描述】:

我正在使用 OMXPlayer 在我的 RaspberryPi 3 上播放一些带有最新 Raspbian Jessie 图像的高清视频。它可以完美运行一段时间(有时 20 分钟,有时 3 小时,有时 5 小时),但随后会冻结。 CPU 和 RAM 值正常。我正在使用以下命令运行 OMXPlayer:

/usr/bin/omxplayer --no-osd --loop myVideo.mp4

在 OMXPlayer 冻结后,我在控制台中收到此消息:

omxplayer.bin: OMXCore.cpp:785 OMX_ERRORTYPE COMXCoreCOmponent:FreeInputBuffers(): Assertion 'm_omx_input_buffers.size() == m_omx_input_available.size()' failed.

谷歌搜索,我发现解决此问题的唯一建议是将 GPU 内存设置为 128,而不是默认设置为 64,我做到了,但没有任何改变。

这里有人对 OMXPlayer 有过类似的体验吗?有没有办法解决这个问题?

【问题讨论】:

【参考方案1】:

因为老树莓派固件和老omxplayer版本,所以我建议你更新固件:

sudo rpi-update

并从此链接安装和下载 OMXPlayer 版本 6c90c75 以避免冻结问题:

http://omxplayer.sconde.net/

【讨论】:

我刚刚更新了 RPi 3 固件,并确保我使用的是最新的 omxplayer 版本 (dfea8c9),不幸的是,它仍然冻结。有什么想法吗?【参考方案2】:

基于this thread,我发现安装旧版本的 Omxplayer(从 2014 年 3 月 9 日起)解决了我的卡顿问题。您可以下载旧版本的 Omxplayer here 并使用以下命令安装下载的 .deb 文件:

 sudo dpkg -i /path/to/your_install_file.deb

【讨论】:

【参考方案3】:

我在这里遇到了类似的问题......在我的情况下,我正在从本地网络上的 nodeJS 服务器推送视频。如果我在服务器上更改视频,OMXPlayer 就会崩溃。

我删除了 OMXPlayer --loop 标志。相反,在 bash 脚本中执行 while 循环。这个解决方案为我解决了它......

#!/bin/bash
sleep .5
while [1]
do
    omxplayer -b -r -live http://192.168.1.16:3000/fileserver/channelA
done

【讨论】:

以上是关于播放视频时 OMXPlayer 卡住的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Python 在 Raspberry Pi 上杀死 omxplayer 播放器

Python 不播放 Omxplayer 视频

GPIO 结合 OMX Player 触发时播放不同的视频

尝试使用 Omxplayer 同步 LED 和视频 - 出现 omxplayer.bin 错误和其他问题

杀死或停止活动线程

导出项目时,omxplayer dbus 控件停止工作