gpt4 book ai didi

python - 来自原始 tcp 数据包的实时视频

转载 作者:行者123 更新时间:2023-12-04 23:08:35 25 4
gpt4 key购买 nike

我们正在尝试制作一个小型 Python 应用程序,该应用程序使用 scapy 显示来自嗅探数据包的实时视频和 ffplay .这是我们硕士学位研究项目的一部分。目标是制作一个概念验证应用程序,用于监视通过 tcp 传输的视频。
我们有一个写入 .dat 的工作脚本文件,然后我们使用 ffplay 读取它.它工作正常,但有很多延迟,我们认为我们可以做得更好:直接将其流式传输到 ffplay无需将原始数据写入文件。

这是我们的脚本:

from scapy.all import * 
import os

export_dat = open("data.dat", "a")

def write_packet_raw(packet):
export_dat.write(str(packet.getlayer(Raw)))

def realtime_packet():
p = sniff(iface="wlan0", filter="tcp and (port 5555)", count=5000, prn=write_packet_raw)

realtime_packet()
export_dat.close()

然后我们启动: ffplay -window_title Videostream -framedrop -infbuf -f h264 -i data.dat
关于我们如何实现这一目标的任何想法?谢谢。

最佳答案

写信给 stdout以二进制模式而不是文件并将输出通过管道传输到 ffplay .

import sys
sys.stdout.buffer.write(...)
sys.stdout.flush()

然后像这样运行它:
python3 sniff.py | ffplay -f h264 -i - -表示 stdin .

关于python - 来自原始 tcp 数据包的实时视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44394401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com