資源簡介
python3.6基于Opencv寫的一個視頻直播小程序,分別用UDP和TCP實現(xiàn),包括傳輸屏幕直播和攝像頭直播,有興趣的可以看看

代碼片段和文件信息
import?socket
import?cv2
import?numpy
from?io?import?BytesIO
from?PIL?import?Image
import?struct
IP?=?“127.0.0.1“
PORT?=?9999
address?=?(IPPORT)
HEADSIZE=12
def?byte_to_img(byte):
????str_buf?=?BytesIO(byte)
????img?=?numpy.array(Image.open(str_buf))
????str_buf.close()
????return?img
def?receive2(process=None):
????buff?=?bytes()
????sock?=?socket.socket(socket.AF_INETsocket.SOCK_STREAM)
????sock.bind(address)
????sock.listen(5)
????packageaddr?=?sock.accept()
????while?True:
????????img?=?package.recv(1024*1024)
????????if?img:
????????????print(type(img))
????????????buff?=?buff?+?img
????????????while?True:
????????????????#判斷數(shù)據(jù)是否完整
????????????????if?len(buff)?????????????????????print()
????????????????????break
????????????????headPack?=?struct.unpack(‘!3I‘?buff[:HEADSIZE])
????????????????cmd?=?headPack[2]
????????????????bodySize?=?headPack[1]
????????????????#判斷數(shù)據(jù)包是否完整
????????????????if?len(buff)?????????????????????break
????????????????body?=?buff[HEADSIZE:HEADSIZE?+?bodySize]
????????????????if(cmd==101):
????????????????????img?=?byte_to_img(body)
????????????????????cv2.imshow(“receive“?img)
????????????????print(len(body))
????????????????buff?=?buff[HEADSIZE?+?bodySize:]
????????????if?(cv2.waitKey(1)?&?0xFF)?==?ord(‘q‘):
????????????????break
????????????else:
????????????????continue
????????break
????cv2.destroyAllWindows()
????sock.close()
if?__name__==“__main__“:
????receive2()
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-07-19?19:37??TCP_UDP視頻傳輸\
?????目錄???????????0??2017-07-19?19:38??TCP_UDP視頻傳輸\TCP\
?????文件????????1558??2017-07-19?16:53??TCP_UDP視頻傳輸\TCP\server.py
?????文件????????3699??2017-07-19?17:50??TCP_UDP視頻傳輸\TCP\shexiangtou.py
?????目錄???????????0??2017-07-19?15:11??TCP_UDP視頻傳輸\UDP\
?????文件?????????680??2017-07-18?21:05??TCP_UDP視頻傳輸\UDP\server.py
?????文件????????2005??2017-07-24?10:17??TCP_UDP視頻傳輸\UDP\shexiangtou.py
- 上一篇:python QQ第三方登陸
- 下一篇:使用LSTM進行時間序列預測
評論
共有 條評論