思路:用byte的数组取字节,用binary做字节序转换操作.
示例:以RTP的取seq号为例,RTP的seq是udp的第3,4个字节,用16位表示,网络序.
代码如下:
for {
length, udpaddr, err := conn.ReadFromUDP(buf)
if err != nil {
return
}
seqbuf := make([]byte, 2)
seqbuf[0]=buf[2]
seqbuf[1]=buf[3]
x := binary.BigEndian.Uint16(seqbuf)
fmt.Println(x)
}
循环接收UDP包,并取出3,4字节做字节序转换,可以打印RTP的序列号