資源簡介
實現了websocket rtsp proxy服務器,并附屬了一個Nginx的Windows版本。可以直接用來替換streamdian的服務器。

代碼片段和文件信息
//#include?“cmnvrs.h“
#include?“network.h“
#include?“ws_proxy.h“
//#include?“logDef.h“
extern?QUEUE?wsp_queue;
extern?uv_loop_t?*loop;
extern?struct?sockaddr_in?local_addr;
extern?struct?sockaddr_in?remote_addr;
static?void?wspUsage(char?*progName)
{
??fprintf(stderr?“Usage:?%s?[option]...\n“
??????????“Create?a?rtsp/sip?protocol?websocket?proxy?server.\n\n“
??????????“??-l???????log?level->{1:CRIT?2:EROR?3:WRAN?4:INFO?5:DBUG}\n“
??????????“??-m???????websocket?proxy?server?port\n“
??????????“??-r???????websocket?server?remote?ip?address\n“
??????????“??-p???????websocket?server?remote?ip?port\n“
??????????“??-s???????rtsp?proxy?server?sub?thread?numbers\n“
??????????“??-h???????output?help\n\n“
??????????“samples:\n“
??????????“??%s?-m?8808?-r?127.0.0.1?-p?554?-s?8?-l?4?\n\n\n“
??????????“press?any?key?to?exit!\n“
??????????progName?progName);
??if(getchar())?{
????exit(1);
??}
}
int?main(int?argc?char?**argv)
{?
??int?j?=?0;
??char?*name?=?NULL;
??int?subThreads?=?0;
??int?verbosityLevel?=?5;//?LOG_LEVEL_INFO;
??unsigned?short?localPort?=?8808;
??unsigned?short?remotePort?=?554;
??char?remoteIp[20]?=?{?“127.0.0.1“?};
??for(j?=?0;?j?????fprintf(stderr?“%s?“?argv[j]);
??}
??fprintf(stderr?“\n\n“);
??name?=?strrchr(argv[0]?‘\\‘);
??if(name)?{
????name++;
??}?else?{
????name?=?strrchr(argv[0]?‘/‘);
????if(name)?{
??????name++;
????}?else?{
??????name?=?argv[0];
????}
??}
??while(argc?>?1)?{
????//?Process?initial?command-line?options?(beginning?with?“-“):
????char?*const?opt?=?argv[1];
????if(opt[0]?!=?‘-‘)?{
??????break;
????}
????switch(opt[1])?{
??????case?‘m‘:?{
????????if(argc?3)?{?wspUsage(name);?}
????????sscanf(argv[2]?“%u“?&localPort);
????????++argv;
????????--argc;
????????break;
??????}
??????case?‘r‘:?{
????????if(argc?3)?{?wspUsage(name);?}
????????sscanf(argv[2]?“%s“?remoteIp);
????????++argv;
????????--argc;
????????break;
??????}
??????case?‘p‘:?{
????????if(argc?3)?{?wspUsage(name);?}
????????sscanf(argv[2]?“%u“?&remotePort);
????????++argv;
????????--argc;
????????break;
??????}
??????case?‘s‘:?{
????????if(argc?3)?{?wspUsage(name);?}
????????sscanf(argv[2]?“%d“?&subThreads);
????????++argv;
????????--argc;
????????break;
??????}
??????case?‘l‘:?{
????????if(argc?3)?{?wspUsage(name);?}
????????sscanf(argv[2]?“%d“?&verbosityLevel);
????????++argv;
????????--argc;
????????break;
??????}
??????default:?{
????????wspUsage(name);
????????break;
??????}
????}
????++argv;
????--argc;
??}
??if(argc?>?2)?{
????fprintf(stderr?“Startup?paramerts?set?error!\n\n“);
????wspUsage(name);
??}
??//startupNetwork();
??//signal(SIGSEGV?&C_PrintBacktrace);
??//signal(SIGABRT?&C_PrintBacktrace);
#if?defined(_MSC_VER)?&&?defined(_DEBUG)
??//C_Log_setLevel(LOG_LEVEL_DBUG);
#else
??//C_Log_createNew(name?(IFLY_LogLevel)verbosityLevel?0?THE_MSU_LOG_DIR)
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-05-14?12:26??nginx-1.17.9\
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\conf\
?????文件????????1103??2020-03-03?23:05??nginx-1.17.9\conf\fastcgi.conf
?????文件????????1032??2020-03-03?23:05??nginx-1.17.9\conf\fastcgi_params
?????文件????????2946??2020-03-03?23:05??nginx-1.17.9\conf\koi-utf
?????文件????????2326??2020-03-03?23:05??nginx-1.17.9\conf\koi-win
?????文件????????5328??2020-03-03?23:05??nginx-1.17.9\conf\mime.types
?????文件????????3636??2020-05-14?10:58??nginx-1.17.9\conf\nginx.conf
?????文件?????????653??2020-03-03?23:05??nginx-1.17.9\conf\scgi_params
?????文件?????????681??2020-03-03?23:05??nginx-1.17.9\conf\uwsgi_params
?????文件????????3736??2020-03-03?23:05??nginx-1.17.9\conf\win-utf
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\
?????文件?????????543??2020-03-03?23:04??nginx-1.17.9\contrib\README
?????文件????????1272??2020-03-03?23:04??nginx-1.17.9\contrib\geo2nginx.pl
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\unicode2nginx\
?????文件????????5991??2020-03-03?23:04??nginx-1.17.9\contrib\unicode2nginx\koi-utf
?????文件????????1090??2020-03-03?23:04??nginx-1.17.9\contrib\unicode2nginx\unicode-to-nginx.pl
?????文件????????5339??2020-03-03?23:04??nginx-1.17.9\contrib\unicode2nginx\win-utf
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\vim\
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\vim\ftdetect\
?????文件?????????198??2020-03-03?23:04??nginx-1.17.9\contrib\vim\ftdetect\nginx.vim
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\vim\ftplugin\
?????文件??????????29??2020-03-03?23:04??nginx-1.17.9\contrib\vim\ftplugin\nginx.vim
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\vim\indent\
?????文件?????????250??2020-03-03?23:04??nginx-1.17.9\contrib\vim\indent\nginx.vim
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\contrib\vim\syntax\
?????文件??????130074??2020-03-03?23:04??nginx-1.17.9\contrib\vim\syntax\nginx.vim
?????目錄???????????0??2020-05-14?12:38??nginx-1.17.9\docs\
?????目錄???????????0??2020-05-14?12:19??nginx-1.17.9\html\
?????文件?????????494??2020-03-03?23:04??nginx-1.17.9\html\50x.html
?????文件????????8721??2020-05-14?12:38??nginx-1.17.9\html\index.html
............此處省略531個文件信息
評論
共有 條評論