• 大小: 7KB
    文件类型: .gz
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: 其他
  • 标签: RTSP  

资源简介

代码参考了 yanyuan9527 按照RFC3984协议实现H264视频RTP打包(附源代码) 想要实现的功能是: 在暴风、或VLC输入rtsp://127.0.0.1:8800/test.264可以连接服务器,服务器就向它发送H264视频数据。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#define MAXLINE 256
#define SERV_PORT 8800

void do_cli(FILE *fp int sockfd struct sockaddr *pservaddr socklen_t servlen)
{
int n;
char sendline[MAXLINE] recvline[MAXLINE + 1];

/* connect to server */
if(connect(sockfd (struct sockaddr *)pservaddr servlen) == -1)
{
perror(“connect error“);
exit(1);
}

while(fgets(sendline MAXLINE fp) != NULL)
{
/* read a line and send to server */
write(sockfd sendline strlen(sendline));
/* receive data from server */
n = read(sockfd recvline MAXLINE);
if(n == -1)
{
perror(“read error“);
exit(1);
}
recvline[n] = 0; /* terminate string */
fputs(recvline stdout);
}
}

int main(int argc char **argv)
{
int sockfd;
struct sockaddr_in servaddr;

/* check args */
if(argc != 2)
{
printf(“usage: udpclient \n“);
exit(1);
}

/* init servaddr */
bzero(&servaddr sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(SERV_PORT);
if(inet_pton(AF_INET argv[1] &servaddr.sin_addr) <= 0)
{
printf(“[%s] is not a valid IPaddress\n“ argv[1]);
exit(1);
}

sockfd = socket(AF_INET SOCK_DGRAM 0);

do_cli(stdin sockfd (struct sockaddr *)&servaddr sizeof(servaddr));

return 0;
}



评论

共有 条评论