小编Zeb*_*gle的帖子

在Python中进行位域操作的最佳方法是什么?

我正在通过UDP读取一些MPEG传输流协议,它有一些时髦的位域(例如长度为13).我正在使用"struct"库来进行广泛的解包,但有一种简单的方法可以说"抓住下一个13位"而不必手动调整位操作吗?我想要像C做位字段的方式(不必回复到C).

建议?

python bits udp bit-fields

25
推荐指数
2
解决办法
1万
查看次数

如何对DirectShow图形进行逆向工程?

我有一个DirectShow图表来从网络流中呈现MPEG2/4电影.当我通过手动连接引脚组装图形时,它不会渲染.但是当我在GraphBuilder上调用Render时,渲染效果很好.

显然有一些设置步骤,我没有在GraphBuilder执行的图形中的某个过滤器上执行.

有没有办法在组装图形时看到GraphBuilder的调试输出?

有没有办法转储工作图,看看它是如何组合在一起的?

解开生活在DirectShow盒子里的神秘的任何其他想法?

谢谢!-Z

directx video directshow mpeg

14
推荐指数
3
解决办法
5526
查看次数

在Python中查找多播UDP消息的发送方的MAC地址?

我有一些代码通过UDP多播侦听"公告".我可以获取发件人的IP地址,但我真正需要的是发件人的MAC地址(因为IP地址可以并且将会改变).

有没有一种简单的方法在Python中执行此操作?

包含的代码段仅供参考,但可能不必要.

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)

# Allow multiple sockets to use the same PORT number
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

# Bind to the port that we know will receive multicast data
sock.bind((self.interface, MCAST_PORT))

# Tell API we are a multicast socket
sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 255)

# Tell API we want to add ourselves to a multicast group
# The address for the multicast group is the third param

status = sock.setsockopt(socket.IPPROTO_IP, 
          socket.IP_ADD_MEMBERSHIP, 
          socket.inet_aton(MCAST_ADDR) + socket.inet_aton(self.interface));

data, addr = sock.recvfrom(1024) …
Run Code Online (Sandbox Code Playgroud)

python sockets udp mac-address multicast

2
推荐指数
1
解决办法
7850
查看次数

标签 统计

python ×2

udp ×2

bit-fields ×1

bits ×1

directshow ×1

directx ×1

mac-address ×1

mpeg ×1

multicast ×1

sockets ×1

video ×1