Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • При наличии на удаленном Клиенте нескольких экранов, для того чтобы транслировать их все, необходимо использовать команду вида:

    Code Block
    ffmpeg.exe -f gdigrab -i desktop -c:v <Кодек> -f rtsp -muxdelay 0.1 "listenrtsp://<IP-адрес Cервера>:<Порт>/<RTSP-ссылка>"

    где,
    параметр -video_size отсутствует, тем самым используется всё видео пространство.

  • Также при наличии нескольких экранов на удаленном Клиенте их можно транслировать отдельно.
    Например, чтобы транслировать только первый экран можно использовать команду:

    Code Block
    ffmpeg.exe -f gdigrab -offset_x 0 -offset_y 0 -video_size 1920x1080 -i desktop -c:v <Кодек> -f rtsp -muxdelay 0.1 "listenrtsp://<IP-адрес Cервера>:<Порт>/<RTSP-ссылка>"

    Чтобы транслировать только второй экран можно использовать команду:

    Code Block
    ffmpeg.exe -f gdigrab -offset_x 1920 -offset_y 0 -video_size 1920x1080 -i desktop -c:v <Кодек> -f rtsp -muxdelay 0.1 "listenrtsp://<IP-адрес Cервера>:<Порт>/<RTSP-ссылка>"

    где,
    параметр -offset_x 1920 выполняет отступ по оси Х вправо на 1920 пикселей, таким образом пропуская первый экран и используя второй.
    Если на удаленном Клиенте нужно транслировать третий экран удаленного Клиента, то значение параметра -offset_x будет равно -offset_x 3840, т.е отступ по оси Х вправо на 3840 пикселей, таким образом пропуская первый и второй экраны и используя третий.

    Info
    titleПримечание.

    Значение параметра -offset_x зависит от разрешения экрана. Если разрешения экранов отличаются, то для трансляции отдельного экрана нужно учитывать его разрешение. 


  • Возможны комбинирования трансляции из нескольких определенных экранов.
    Например, для трансляции первого и второго экрана можно использовать команду:

    Code Block
    ffmpeg.exe -f gdigrab -offset_x 0 -offset_y 0 -video_size 3840x1080 -i desktop -c:v <Кодек> -f rtsp -muxdelay 0.1 "listenrtsp://<IP-адрес Cервера>:<Порт>/<RTSP-ссылка>"

    где,
    значение параметра -video_size 3840x1080 означает сумму ширины первого и второго экранов.
    Для трансляции второго и третьего экранов можно использовать команду:

    Code Block
    ffmpeg.exe -f gdigrab -offset_x 1920 -offset_y 0 -video_size 3840x1080 -i desktop -c:v <Кодек> -f rtsp -muxdelay 0.1 "listenrtsp://<IP-адрес Cервера>:<Порт>/<RTSP-ссылка>"

    где,
    параметр -offset_x 1920 выполняет отступ по оси Х на ширину первого экрана;
    значение параметра -video_size 3840x1080 означает сумму ширины второго и третьего экранов.

  • При использовании трёх и более экранов на удаленном Клиенте есть возможность использовать декодирования формата Nvidia в FFmpeg.
    Для этого нужно выполнить команду следующего вида:

    Code Block
    ffmpeg.exe -f gdigrab -i desktop -c:v <Кодек> -f rtsp -muxdelay 0.1 "listenrtsp://<IP-адрес Cервера>:<Порт>/<RTSP-ссылка>"

    где,
    параметр Кодек может принимать значения h264_nvenc, hevc_nvenc.

    Info
    titleПримечание.

    Для графических карт Intel нужно использовать кодеки h264_qsv и hevc_qsv, а для карт AMD − h264_amf и hevc_amf.

    Максимальное разрешение экрана, c которым может работать NVENC h.264, составляет 4096x4096. Максимальное разрешение экрана, с которым может работать NVENC h.265, составляет до 8192x8192.
    Например, при использовании NVENC h.264 три экрана с разрешением 1920x1080 не будут работать.