91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2021-10-22
  • 語言: 其他
  • 標簽: rtsp??

資源簡介

主要演示了RTSP的各種協議指令的使用,并能正常播放音頻與視頻。

資源截圖

代碼片段和文件信息

#ifdef?_WIN32_WCE
#include?“stdafx.h“
#endif

#ifndef?_WIN32_WCE
#define?WIN32_LEAN_AND_MEAN
#endif

#include?
#include?

#include?

#include?

#include?
#include?
#include?

#ifdef?_WIN32_WCE
#pragma?comment(lib?“ws2.lib“)
#else
#pragma?comment(lib?“ws2_32.lib“)
#endif

#define??PP_NAME?“User-Agent:?Master?1.0\r\nPrivate:?NOTIFY“
#define??PP_NAME1?“User-Agent:?Master?1.0“
#define??PP_CRLF?“\r\n“

//測試之用

//打開連接
long?InitSocket();

//關閉連接
long?DeInitSocket();

//初始化tcp?socket
long?InitTCPSocket(int?port);

//初始化udp?socket
long?InitUDPSocket(const?char?*ip?int?port);

//取socket端口號
long?GetSokcetPort(int?sock?int?*port);

//讀取數據
long?ReadSocket(int?sock?char?*buf?int?len?int?timeout);

//發送命令數據
long?SendRTSPCmd(int?sock?const?char?*cmd?const?char?*szparam);

//解析rtsp命令回應數據
long?PraseRTSPCmd();
long?PraseOptionCmd(const?char?*sz);
long?PraseDescribeCmd(const?char?*sz);
long?PraseSetupCmd(const?char?*sz?char?*sess);
long?PrasePlayCmd(const?char?*sz);
long?GetResponseCode(const?char?*sz);??//取返回值

//////////////////////////////////////////////////////////////////////////
//字符串操作函數?
static?char*?getLine(char*?startOfLine);


//生成rtsp發送命令
char?*?GetRTSPCmd(const?char?*);
char?*?GetOptionCmd(char?*url);
char?*?GetDescribeCmd(char?*url);
char?*?GetPlayCmd(char?*url?char?*session?char?*range);
char?*?GetSetupCmd(char?*url?int?port1?int?port2);

char?*?GetReportCmd(char?*);

//////////////////////////////////////////////////////////////////////////
//日志函數
long?logwr(void?*?int?len);

//全局變量定義區
fd_set?rfdsock;
//日志寫入文件指針
FILE?*fp?=?NULL;
//

//////////////////////////////////////////////////////////////////////////
//rtsp請求解析
long?PraseURL(const?char?*url?char?*szip?int?*iport);
int?_tmain(int?argc?_TCHAR*?argv[])
{
?int?sockin?sc1?sc2;
?sockaddr_in?addr;
?char?*buf?*szcmd?*url*strUrl;
?char?szip[32]={0};
?int?nlen?iret?iport;
?int?ip1?ip2;
?long?lret;

?//初始化變量 
?FD_ZERO(&rfdsock);

?fp?=?fopen(“1.txt“?“w+“);
?//分配緩沖區
?nlen?=?10240;
?buf?=?(char*)malloc(nlen);
?strUrl=(char*)malloc(300);
?memset(strUrl0300);
?memset(buf010240);
?
?//定義要連接的url
//url?=?“rtsp://192.168.1.43:2554/realmp3.mp3“;
??url?=?“rtsp://192.168.0.111:80/“;
?//url?=?“rtsp://192.168.1.43/1.amr“;
?//初始化sock
?long?lRet=InitSocket();

?//分析url請求,取出ip,端口
?lret?=?PraseURL(url?szip?&iport);
?sprintf(strUrl“rtsp://admin:123456@%s:%i/vga.sdp“szip?iport);
?
?//初始化與服務器連接的socket
?sockin?=?InitTCPSocket(0);
?
?//與服務器連接
?addr.sin_family?=?AF_INET;
?addr.sin_port?=?htons(iport);
?addr.sin_addr.s_addr?=?inet_addr(szip);
?iret?=?connect(sockin(struct?sockaddr*)&addr?sizeof?addr);

?//發送option命令
?szcmd?=?GetOptionCmd(url);
?lret?=?SendRTSPCmd(sockin?“OPTIONS“szcmd);
?free(szcmd);

?lret?=?ReadSocket(sockin?buf?nlen100);

?
?//發送DESCRIBE命令
?szcmd?=?GetDescr

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????14163??2012-01-06?16:33??Rtsp.cpp

-----------?---------??----------?-----??----

????????????????14163????????????????????1


評論

共有 條評論