我想知道omxplayer何时开始播放直播链接。 有时这需要4-5秒,有时需要6-7秒。
当我执行os.system('omxplayer '+url)
时,我立即收到以下消息:
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秒后),我得到:
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何时开始工作?
由于
#!/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()
答案 0 :(得分:2)
试试这个:
proc=Popen(['omxplayer',url], stdout=PIPE, stderr=PIPE)
print proc.communicate() # remove [0]