首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python与omxplayer通信

Python与omxplayer通信
EN

Stack Overflow用户
提问于 2015-08-19 22:08:42
回答 1查看 1.1K关注 0票数 2

我想知道omxplayer何时开始播放直播流链接。有时这需要4-5秒,有时需要6-7秒。

当我执行os.system('omxplayer '+url)时,我立即得到以下消息:

代码语言:javascript
运行
复制
no xset in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
which: no xrefresh in (/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)

然后,当实况流开始时( 5-7秒后),我得到:

代码语言:javascript
运行
复制
Video codec omx-h264 width 1280 height 720 profile 578 fps 25.000000
Audio codec aac channels 2 samplerate 44100 bitspersample 16
Subtitle count: 0, state: off, index: 1, delay: 0
V:PortSettingsChanged: 1280x720@25.00 interlace:0 deinterlace:0 anaglyph:0 par:1.00 layer:0 alpha:255

我正在尝试通过子进程获取第二条消息。但是我从来没有得到过。我怎么才能得到第二条消息,或者我怎么知道omxplayer什么时候开始工作?

谢谢

代码语言:javascript
运行
复制
#!/usr/bin/python2

import sys, os, time
from subprocess import PIPE, Popen


url="http://livestreamlink.m3u8"


def Main():
    proc=Popen(['omxplayer',url], stdout=PIPE)
    time.sleep(5)
    print proc.communicate()[0]


if __name__ == "__main__":
    Main()
EN

回答 1

Stack Overflow用户

发布于 2015-08-19 22:42:51

试试这个:

代码语言:javascript
运行
复制
proc=Popen(['omxplayer',url], stdout=PIPE, stderr=PIPE)
print proc.communicate()   # remove [0]
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32097873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档