树莓派4+PiSound无法通过Python脚本接收Pioneer CDJ的UDP数据
树莓派4(搭载PiSound)无法通过Python脚本接收Pioneer CDJ的UDP数据
环境与数据接收验证
- 硬件配置:搭载PiSound的树莓派4,通过以太网端口连接Pioneer CDJ
- 用
tcpdump验证数据可达性:
执行命令sudo tcpdump -i eth0 udp port 50001,得到以下输出,确认CDJ的UDP广播数据(目标地址169.254.255.255:50001)能被树莓派以太网接口捕获,播放/暂停CDJ时数据流相应启停,符合预期:pi@raspberrypi:~/udp_test $ sudo tcpdump -i eth0 udp port 50001 tcpdump: verbose output suppressed, use -v[v]... for full protocol decode listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes 11:47:48.060238 IP 169.254.252.162.7295 > 169.254.255.255.50001: UDP, length 96
异常情况:Python监听脚本无数据
使用以下Python脚本监听UDP 50001端口,始终无法接收到任何数据:
import socket UDP_IP = "0.0.0.0" UDP_PORT = 50001 sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.bind((UDP_IP, UDP_PORT)) print("Listening for data...") while True: data, addr = sock.recvfrom(1024) print(f"Received data: {data}")
已完成的排查动作
- 确认硬件连接无故障
- 树莓派以太网IP处于
169.254.x.x段,与CDJ地址在同一链路本地网络 - 已检查防火墙配置,确认UDP 50001端口无拦截
寻求解决思路,让Python脚本能够正常接收并处理CDJ发送的UDP数据。
内容的提问来源于stack exchange,提问作者Monty Schütze
相关产品推荐
相关产品推荐

