websocket-rtsp-proxy-test.zip


实现了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]...

          “Create a rtsp/sip protocol websocket proxy server.


          “  -l       log level->{1:CRIT 2:EROR 3:WRAN 4:INFO 5:DBUG}

          “  -m       websocket proxy server port

          “  -r       websocket server remote ip address

          “  -p       websocket server remote ip port

          “  -s       rtsp proxy server sub thread numbers

          “  -h       output help


          “samples:

          “  %s -m 8808 -r 127.0.0.1 -p 554 -s 8 -l 4 



          “press any key to exit!

          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 < argc; j++) {
    fprintf(stderr “%s “ argv[j]);
  }
  fprintf(stderr “

“);
  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!

“);
    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.9conf
     文件        1103  2020-03-03 23:05  nginx-1.17.9conffastcgi.conf
     文件        1032  2020-03-03 23:05  nginx-1.17.9conffastcgi_params
     文件        2946  2020-03-03 23:05  nginx-1.17.9confkoi-utf
     文件        2326  2020-03-03 23:05  nginx-1.17.9confkoi-win
     文件        5328  2020-03-03 23:05  nginx-1.17.9confmime.types
     文件        3636  2020-05-14 10:58  nginx-1.17.9conf
ginx.conf
     文件         653  2020-03-03 23:05  nginx-1.17.9confscgi_params
     文件         681  2020-03-03 23:05  nginx-1.17.9confuwsgi_params
     文件        3736  2020-03-03 23:05  nginx-1.17.9confwin-utf
     目录           0  2020-05-14 12:19  nginx-1.17.9contrib
     文件         543  2020-03-03 23:04  nginx-1.17.9contribREADME
     文件        1272  2020-03-03 23:04  nginx-1.17.9contribgeo2nginx.pl
     目录           0  2020-05-14 12:19  nginx-1.17.9contribunicode2nginx
     文件        5991  2020-03-03 23:04  nginx-1.17.9contribunicode2nginxkoi-utf
     文件        1090  2020-03-03 23:04  nginx-1.17.9contribunicode2nginxunicode-to-nginx.pl
     文件        5339  2020-03-03 23:04  nginx-1.17.9contribunicode2nginxwin-utf
     目录           0  2020-05-14 12:19  nginx-1.17.9contribvim
     目录           0  2020-05-14 12:19  nginx-1.17.9contribvimftdetect
     文件         198  2020-03-03 23:04  nginx-1.17.9contribvimftdetect
ginx.vim
     目录           0  2020-05-14 12:19  nginx-1.17.9contribvimftplugin
     文件          29  2020-03-03 23:04  nginx-1.17.9contribvimftplugin
ginx.vim
     目录           0  2020-05-14 12:19  nginx-1.17.9contribvimindent
     文件         250  2020-03-03 23:04  nginx-1.17.9contribvimindent
ginx.vim
     目录           0  2020-05-14 12:19  nginx-1.17.9contribvimsyntax
     文件      130074  2020-03-03 23:04  nginx-1.17.9contribvimsyntax
ginx.vim
     目录           0  2020-05-14 12:38  nginx-1.17.9docs
     目录           0  2020-05-14 12:19  nginx-1.17.9html
     文件         494  2020-03-03 23:04  nginx-1.17.9html50x.html
     文件        8721  2020-05-14 12:38  nginx-1.17.9htmlindex.html
............此处省略531个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)