我有一个基于wifi的小型FPV相机用于无人机。我设法使用python来下载和保存h264文件。
TCP_IP = '193.168.0.1'
TCP_PORT = 6200
BUFFER_SIZE = 2056
f = open('stream.h264', 'wb')
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((TCP_IP,TCP_PORT))
while True:
data = sock.recv(BUFFER_SIZE)
f.write(data)
print("Writing")
sock.close()
f.close()
我现在试图做的一段时间是播放流。我找到了这个流,我可以下载并保存,但现在我想现场打开它。 我尝试过使用VLC的开放式网络流'有多种选择,但似乎都没有。
答案 0 :(得分:0)
我使用
成功输出到mplayer data = sock.recv(BUFFER_SIZE)
sys.stdout.buffer.write(data)
然后让mplayer管道输入
python cam.py - | mplayer -fps 20 -nosound -vc ffh264 -noidx -mc 0 -
答案 1 :(得分:0)
这是一种简单的方法,是的:发送H.264 NALU流(你在每个nal单元之前加上0,0,0,1前缀,它没问题。)
如果您想要更酷的东西,那么您可以添加打包到RTP并通过多播发送。编码和易于阅读将非常简单。