Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python视频流显示包_Python_Sockets_Video Streaming - Fatal编程技术网

python视频流显示包

python视频流显示包,python,sockets,video-streaming,Python,Sockets,Video Streaming,我正在从事一个网络课程项目,其中我必须创建一个视频流服务器。我发现一个简单的python客户机/服务器套接字二进制流似乎非常有用。我可以通过网络将视频文件作为数据包发送,但接收方正在将传入的数据包保存为文件。我希望将传入的数据包显示为视频流(最好是在使用HTML的web浏览器上),而不是写入文件。请提出一些可能的方法。谢谢 当我在做一个项目时,我想从头开始创建一个流式服务器,而不是使用像Flumotion这样的现有实现 以下是发送端和接收端的代码: 发送方: import socket HOS

我正在从事一个网络课程项目,其中我必须创建一个视频流服务器。我发现一个简单的python客户机/服务器套接字二进制流似乎非常有用。我可以通过网络将视频文件作为数据包发送,但接收方正在将传入的数据包保存为文件。我希望将传入的数据包显示为视频流(最好是在使用HTML的web浏览器上),而不是写入文件。请提出一些可能的方法。谢谢

当我在做一个项目时,我想从头开始创建一个流式服务器,而不是使用像Flumotion这样的现有实现

以下是发送端和接收端的代码:

发送方:

import socket

HOST = 'localhost'
PORT = 9876
ADDR = (HOST,PORT)
BUFSIZE = 4096
videofile = "./test2.mp4"

bytes = open(videofile).read()

print len(bytes)

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client.connect(ADDR)

client.send(bytes)

client.close()
接收方:

import socket

HOST = ''
PORT = 9876
ADDR = (HOST,PORT)
BUFSIZE = 4096

serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

serv.bind(ADDR)
serv.listen(5)

print 'listening ...'

while True:
    conn, addr = serv.accept()
    print 'client connected ... ', addr
    myfile = open('testfile.mov', 'w')

    while True:
        data = conn.recv(BUFSIZE)
        if not data: break
        myfile.write(data)
        print 'writing file ....'

    myfile.close()
    print 'finished writing file'
    conn.close()
    print 'client disconnected'

在本例中,客户端是发送端。它将文件上传到服务器。服务器将该TCP流保存到其文件中。然而,你可能想要一些不同的东西。如果您希望使用浏览器查看该视频,服务器必须使用某些流协议发送视频。在本例中,客户端是发送端。它将文件上传到服务器。服务器将该TCP流保存到其文件中。然而,你可能想要一些不同的东西。如果您希望使用浏览器查看该视频,服务器必须使用某些流协议发送视频。