запретить ffmpeg открывать окно консоли - PullRequest
1 голос
/ 07 февраля 2020

У меня есть сервер узла / express, который используется для передачи потоков с IP-камеры на веб-сайт. Все работает хорошо. Я запускаю этот веб-сервер с PM2 на windows сервере.

Проблема: для каждого потока у меня есть windows консоль, открывающаяся без входа в систему. Консоль открывается снова, когда я пытаюсь закрыть ее.

Есть ли способ предотвратить эти консоли открыть?

Вот соответствующий код node.js:

const { NodeMediaServer } = require('node-media-server');

private _initiate_streams(): void{
    DatabaseProvider.instance.camerasDao.getCamerasList().pipe(
      take(1)
    ).subscribe(
        (databaseReadOperationResult: DatabaseReadOperationResult<ICamera[]>) => {
            if (databaseReadOperationResult.successful === true){
              const cameras = databaseReadOperationResult.result;
              const tasks = [];
              cameras.forEach( camera => {
                tasks.push(
                  {
                    app : config.get('media_server.app_name'),
                    mode: 'static',
                    edge: camera.rtsp_url,
                    name: camera.stream_name,
                    rtsp_transport: 'tcp'
                  }
                )
              });

              const configMediaServer = {
                logType: 3, // 3 - Log everything (debug)
                rtmp: {
                    port: 1935,
                    chunk_size: 60000,
                    gop_cache: true,
                    ping: 60,
                    ping_timeout: 30
                },
                http: {
                    port: config.get('media_server.port'),
                    allow_origin: '*'
                },
                auth: {
                    play: true,
                    api: true,
                    publish: true,
                    secret: config.get('salt'),
                    api_user: 'user',
                    api_pass: 'password',
                },
                relay: {
                    ffmpeg: 'C:\\FFmpeg\\bin\\ffmpeg.exe',
                    tasks: tasks
                }
              };

              var nms = new NodeMediaServer(configMediaServer)
              nms.run();
            } else {
                // catch exception
            }
        }
    );
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...