VT Publisher
A guide to using VT Publisher and its features.
VT Publisher is the Windows application that is run on the sending side. It supports the following input options:
  • NDI;
  • SDI or HDMI sources via Blackmagic, AJA, Magewell, or Bluefish devices;
  • RTMP, RTMPS, UDP, and HLS streams if you have a proper working URL
  • Generic video devices, such as webcams (via DirectShow).
  • Audio only devices (ASIO and WASAPI/WDM)

Publishing feeds

Publishing feed is the basic operation of VT Publisher. See the picture below and go through:
  1. 1.
    Select the source you wish to publish from the list of available sources (7). Once selected, the preview of the source will start and its parameters will be shown (8,17).
  2. 2.
    To start publishing, choose the desired bitrate (11) and hit "Start Publishing" (16).
  3. 3.
    Once the stream has been started, the URL appears in the "URL" tab (12). One can open this URL in a browser to receive a high-quality WebRTC preview of this feed.
You can set a custom name for this particular instance of VT Publisher via the "Location" field – to make it easier to locate this feed in VT Receiver.

Publisher interface overview and description

Here's what it looks like.
VT Publisher publishing two sources
The central section is actually the list with the available sources, and if the row is filled with blue it means that this source is selected. When you select the source VT Publisher shows you the preview of this source.
Here is the description of VT Publisher main window controls and indicators:
Control
Function
1
The current version of the Video Transport software, the channels count in your current license, its validity date, and the latest release version.
2
Link to download the latest release version of the Video Transport
3
The current location, where VT Publisher is run. It is possible to assign your own names to locations.
4
The Room (Publisher) ID – your unique identifier, provides access to all feeds published under this ID. Here you can read more about it.
5
Change Location or ID button. You can change the Location, but ID cannot be changed if you have it in your license. Read about it here.
6
Global Setting menu button. Open the Global settings menu that contains settings applied to VT Publisher in general. More detailed information here.
7
Source column. Contains a list of the available sources. Colored dot on the left side of the source can be: gray(source is unpublished or ready to publish), green (source is being published), red(problem while publishing)
8
Video Format column. Contains information regarding video format of the source you currently publishing or viewing
9
FPS column. Shows actual framerate for the source.
10
Clients column. Shows numbers of current receivers/viewers. The first number is the number of VT Receivers previewing or outputting your stream. The second number is the number of Web Preview/Guest viewers.
11
Bitrate column. Here is you can select a desirable bitrate for the particular source from the list. Also, you can just click on the value and enter the desirable bitrate by yourself.
12
URL column. Contains the Web Preview URLs for the published sources. You can click on the URL to open it in your default browser or click on the copy sign to copy the URL to the clipboard.
13
Add URL button. Adds network streams (UDP, RTMP, or IP camera) as a source for publishing. Follow the instructions below.
14
Remove button. Removes the selected source from the list: stops publishing and re-initializes the video source. Once removed, the source will instantly reappear in the list.
15
Stop button. Stops publishing of the selected source.
16
Start button. Start publishing of the selected source. Be sure that you are able to see Preview and format before publishing your feed.
17
Preview window. Shows you preview of the selected source
18
Statistics bottom line. These statistics show you the encoding stats: current protocol (WebRTC or SRT), bitrate (Mbps), video codec, and FPS performance (value has to be higher than the stream's FPS). More detailed info can be read here.
19
Preview controls. You can unmute sound from the Preview and go to Fullscreen. If you go to Fullscreen mode click the left mouse button again to get back to Standart mode.
In VT Publisher we have three kinds of settings menus:
  • Source settings. A single source stream settings, only selected source is affected. Follow the instructions below.
  • Global settings. Here you can alter some settings that will have an impact on VT Publisher in general.
  • Security settings. You can manage your stream security settings for the Web Preview and Web Guest web-based apps.

Right-click menu

Yes, you can click the right button on the selected source and see the following menu appears:
Right click menu in VT Publisher
Let's figure out each string:
Open Preview URL. Opens the Web Preview in your default browser.
Copy Preview URL. Copies the Web Preview link to the clipboard.
Copy Web Guest URL. Copies the Web Guest link to the clipboard.
Copy Access ID. Copies Access ID of the selected stream to the clipboard.
Reset Access ID/URLs. Resets the selected sources ID and URLs for the Web Apps.
Settings. This is the source settings menu. See the picture below:
Security Settings. You can manage your stream security settings for the Web Preview and Web Guest web-based apps.

Source Settings

Here is the description of each setting on the picture:
VT Publisher Source settings
Setting
Description
Channel Label
You can alter the initial channel label here, but to see a new name on the Receiver side you should re-publish. If this field is empty it will be named as initial.
UDP/TCP Tunnel address
Sets the address for UDP/TCP tunneling feature. Check the instructions here.
SRT Default Encoder
This is drop-down list. Here you can select the desirable encoder for your stream from: GPU_H265, GPU_H264, CPU_H264. If you have a proper NVIDIA GPU we recommend you to use GPU_H265. In case if you don't have an NVIDIA GPU, better option is to use CPU encoding, but it will requires powerfull CPU.
Create Virtual Device for video source
Creates a virtual device that replicates the original source and names it with the prefix "VT". For example you need to publish your USB Web Camera, but need to be on call via Google Meet at the same time. This setting will allow you to do this. This feature will be deprecated.
Path to custom image for "No Video" signal
Here you can set your own picture for the "No Video" signal screen. Needs to be re-published. Image format: JPG, PNG.
Source audio format
Sets source audio format. Auto by default. If Auto not working set this manually from the list.
SRT Publisher Port
Here you can mannualy set the ICE connection port for VT Publisher
SRT Audio Bitrate per stereo-par
Sets the audio bitrate for the source feed (per each 2 channels)
External Audio
You can select external audio device from the drop down list. More information below.
Audio Channels Mask
Here you can set the audio channels which you wish to publish with the source. For example: 1,2,5,6 means that you selected channels 1,2,5,6 and only those channels will be heard in the stream.
Audio Gain
Applies audio gain to source audio tracks.
Web Guest Mix-Minus
Enables automatic mix-minus for the Web Guests. Refer here for the full information.
Web Guest Mix-Minus channels mask
Sets the channels that Web Guests will hear in mix-minus
Web Guest Mix-Minus delay msec
Delay for Mix-Minus. Default is 50 msec. You can raise up this value in case of crackling audio problems.Web Guest Mix Minus Delay - it's web guest audio delay time which is going to be used during the mix munus processing, by default 50 ms, so all remote peers will hearing another remote peers audio with that delay
Web Guest GPU H.264 decoder
Use the GPU decoding on Web Guest side if available. Improves perfomance and quality of the incoming stream on the Web Guests side.
Web Preview&Guest video encoder
Select the encoder from the drop down list. GPU H264 is recommended option when you have an powerful NVIDIA GPU, because it encodes one time for all viewers. Other options are: VP9, CPU H264.
Web Preview&Guest Max output feed bitrate
Sets the bitrate for the Web Preview&Guest encoder in Megabits per second
Web Preview&Guest feed max width
Sets feed maximum width resolution for the Web apps
Web Preview&Guest feed max height
Sets feed maximum height resolution for the Web apps
Output Video Enabled
If you disable this switch you will publish the Audio Only feed

Global settings menu

Global setting window
Text
Desription
Language
Language selection. Right now we support English and Simplified Chinese options.
VT 2.0 WebRTC mode
Enables new WebRTC implementation for the Web Preview and Web Guests. It's recommended to leave it on by default.
VT 2.0 SRT/WebRTC Port Range
Allows you to set custom port range for ICE (p2p) connection between VT Publisher and Receiver
VT 2.0 gateways filtering (e.g. for custom routes)
Using this field you can alter the VT SRT gateways list. It is recommended to leave it as it be.
Turn on gpu_pipeline (required for 10 bit feature)
Enable gpu_pipeline mode if you using the BMD cards and 10bit feature. In other cases, it is not recommended to use it.
Capture 10 bit video (BMD cards only)
Enable this switch to capture 10 bit video. This feature is only supported on Blackmagic Design devices.
Capture 4:4:4 video (BMD cards only)
Enable this switch to capture 4:4:4 video. This feature is only supported on Blackmagic Design devices.
Split audio channels (ASIO devices only)
Split one ASIO audio device to many by the mask. Mask is applied for each device simultaneously. Format: X,X,X,.... Where X is the number of channels assigned from real device to split. For example, you have a device with the channels:0,1,2,3,4,5,6,7 - 7 in total. So if you set the Split audio channels=3,2,3 VT will create 3 audio devices with channels from the original device - 0,1,2; 3,4; 5,6,7
Encode 4:4:4 video
Enable this switch to encode the 4:4:4 video.
Use Quicksync encoder
If you enable this switch VT Publisher will use the QS265/264 encoder if your NVIDIA GPU reached the limit for encoding sessions. It should work for H265/H264 encoders. Works only with Intel CPU with an integrated HD graphics. Currently in beta.
Set the timeout for connection (in milliseconds)
Sets the timeoout for the connection to signaling server. By default it is set to 5000 ms. How and when you probaby need it here.
Audio source for screen capture
Select audio source to use with a screen capture feed
Screen capture resolution
Sets the resolution of screen capture feed
Screen capture frame rate
Sets the screen capture frame rate in frames per second
Show cursor on the screen capture video
Selects show or hide cursor on the screen capture video
Show mouse highlight on the screen capture video
If set to show , highlights mouse cursor with yellow circle
Animate clicks on screen capture video
If enabled it will show animation if mouse clicked
Set the preview type
Here you can select render API for the native in-app Preview Window. Options are dx11, dx9.
Show RMS audio meters on preview
Enable this to add RMS audio meters overlay on the preview to observe the sound levels.
Set the preset for Nvidia encoder
Sets the preset for NVIDIA encoder: High Quality or High Perfomance

Stream security settings (VT Publisher)

This menu allows you to alter stream security settings for the selected source. It has a web counterpart in the Control Panel with a slightly different interface. of the Security Settings in VT Publisher. All of the changes that you've made here will be reflected in the apps and vice versa.
Here is how it looks by default:
The "Allow anonymous access" switch is on by default and you need to switch it off to restrict the stream access to designated accounts.
Let's create a security account.
Click on the "Add" button to create new login credentials to access the stream.
The system will automatically suggest the name of the account and generate a random password. You can change it as you will. Then you need to set the start and expiration time. If you will not set a Start time account will be active till the Expiration time. If you will not set Expiration time account will have perpetual access.
Active switch is supposed to enable or disable the account.
The account you've created will appear in the list.
Here is the description of security settings controls:
# on a picture
Description
1
Allow anonymous access switch. On - allows anonymous links, Off- only logins from the list will have access to Web Preview/Web Guest link of this stream
2
Active switch. If On then login is active, off- deactivates access from this login to the Web Preview/Web Guest link of this stream.
3
Login. If it is an email you can send the invitation using the Invite button
4
Copy username to the clipboard
5
Password field is hidden by default
6
Hide/unhide password switch
7
Copy password to the clipboard
8
Time when from account is allowed to login
9
Time after that account will be expired
10
Copy Web Guest URL with embedded account login to the clipboard
11
Add new security account
12
Deletes the account. It is very important that this button acts without any permission or dialog from your side. So you have to be sure when you click on it.
13
Open dialog to edit account details: Login
name, Password, Start time, Expiration time,
14
Invite button. Opens the browser or your default e-mail client with a template draft of the invitation to the event for the Web Guest. Works only for accounts with email logins.

Adding network streams as sources

VT Publisher can also use RTMP, RTMPS, UDP, and HLS streams as sources.
Hit "Add URL" and paste the streaming link into the field below. Add parameters into the respective field to define extra settings.

Adding external audio to the video source

It's possible to add external audio to the video source.
You can select External Audio device in the source settings window.
The external audio channels will be added after the original audio.
If your original audio has 2 audio channels and external audio also has 2 audio channels, the video stream will contain 4 audio channels in total (2 original video audio + 2 external audio). You can use Audio Channels Mask setting to keep only External audio in the stream, in the example above External audio is on channels 3 and 4, and using "3,4" as Audio Channels Mask will be kept only two audio channels from the external audio source.

Bottom statistics line

Shows you network and encoding statistics. It has some different states:
Ready for connect. This state means that you successfully published the stream, but not connected to any VT Receivers. Looks like the following string:
(Web20:0) Ready for connect VT20 GW:3 W:0 C:0
Web20:0 - Indicates that VT Publisher uses VT 2.0 WebRTC mode, and has 0 connected Web Clients VT20 - indicates that VT Publisher uses VT 2.0 SRT mode. GW:3 - The number of available VT SRT Gateways. The normal value is 3 W:0 - not established connection warnings count. C:0 - number of the connections via SRT protocol with VT Receivers and VT Guests
Connected. This state looks like this:
(Web20:0) VT20 GW:3 W:0 C:1 [2:ICE(192.168.0.125:60819)] mbps:9.1 Venc: NVenc HW(GPU_H265) 1280.6 fps
C:1 - means that you have 1 connection with VT Receiver or VT Guest via SRT protocol
2:ICE(192.168.0.125:60819) - it means that connection to VT Receiver established in p2p mode (ICE) with shown IP-address and UDP port. If you see instead something like GW:(gw04:7777) it means that you have connected through VT SRT Gateway, because ICE connection was failed.
Mbps: 9.1 - this is the current bitrate
VEnc: NVEnc HW(GPU_H265) 1280.6 fps - shows that this source is encoded with hardware h265 NVIDIA encoder and current FPS performance.