发送udp包-windows网络编程

这是一个Windows平台上的UDP网络编程示例,用于发送视频和音频数据。程序创建两个套接字,分别对应5000和6000端口,向IP地址238.1.1.1发送'video data'和'audio data',并使用sendto函数间隔0.5秒交替发送。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// test.cpp : Defines the entry point for the console application.
//
#ifdef WIN32
#include "stdafx.h"
#include <WinSock2.h>

int _tmain(int argc, _TCHAR* argv[])
{
 SOCKET rtpsock;

 struct sockaddr_in video_sock;
 struct sockaddr_in audio_sock;
 unsigned short video_port = 5000;
 unsigned short audio_port = 6000;
 char ipstr[32] = "238.1.1.1";
 unsigned int destip;

 char videoBuf[1024]="send video data";
 char audioBuf[1024]="send audio data";

#ifdef WIN32
 //InitWinsock();
 WSADATA wsaData;
 if (WSAStartup(MAKEWORD(2,2),&wsaData)) //调用Windows Sockets DLL
 {
  printf("WSAStartup/n");
  WSACleanup();
  return 0;
 }
#endif

 // Create socket
 destip = inet_addr(ipstr);
 // video socket
 video_sock.sin_family=AF_INET;
 video_sock.sin_port=htons(video_port); ///监听端口
 video_sock.sin_addr.s_addr=destip;//inet_addr("238.1.1.1"); ///本机
 // audio socket
 audio_sock.sin_family=AF_INET;
 audio_sock.sin_port=htons(audio_port); ///监听端口
 audio_sock.sin_addr.s_addr=destip;//inet_addr("238.1.1.1"); ///本机

 rtpsock=socket(AF_INET,SOCK_DGRAM,0);
 while (1)
 {
  printf("---------------Send video data-------------/n");
  sendto(rtpsock,videoBuf,strlen(videoBuf),0,(struct sockaddr*)&video_sock,sizeof(struct sockaddr));
  Sleep(500);
  printf("---------------Send audio data-------------/n");
  sendto(rtpsock,audioBuf,strlen(audioBuf),0,(struct sockaddr*)&audio_sock,sizeof(struct sockaddr));
  Sleep(500);

 }
 closesocket(rtpsock);

 return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值