Skip to content

Pushing streams to Decklink SDI

Flussonic Media Server not only captures streams but also passes them to a Decklink SDI or HDMI card.

To enable pushing set the parameter push decklink://:


stream test {
  input udp://239.0.0.1:1234;
  push decklink://0 size=720x576 fps=50 deinterlace=true;
}

Flussonic decodes a stream and passes it to the specified Decklink device or a slot on the card itself (for example, 0). If necessary, you can use deinterlace=true to eliminate interlacing.

To manage pushing to a Decklink card, you can set the following parameters:

Parameter Description
dthreads Number of threads in a decoder. See API schema.
scale Scaling algorithm. See API schema.
volume Audio volume coefficient. See API schema.
fps Frame rate. See API schema.
size The size of output frame in pixels.
format The Decklink mode supported by a card. For details, see Decklink card modes.
vbi_lines Lines of VBI (vertical blanking interval) of an output analog stream that will contain teletext. For details, see Passing teletext from MPEG-TS to analog streams and API schema.
disabled Disable pushing the stream.

Usually a Decklink card supports a limited set of modes. Each mode is a combination of a frame size and FPS, encoded in Decklink format. For example, Hp50 is for 1920x1080 size with 50000/1000 FPS. When pushing a stream to a Decklink card, you can set the mode value in the format parameter. For example:


stream test {
  input ...;
  push decklink://0 format=Hi50;
}

The possible Decklink card modes are listed below.

    mode        description
    ntsc        720x486 at 30000/1001 fps (interlaced, lower field first)
    pal         720x576 at 25000/1000 fps (interlaced, upper field first)
    23ps        1920x1080 at 24000/1001 fps
    24ps        1920x1080 at 24000/1000 fps
    Hp25        1920x1080 at 25000/1000 fps
    Hp29        1920x1080 at 30000/1001 fps
    Hp30        1920x1080 at 30000/1000 fps
    Hp50        1920x1080 at 50000/1000 fps
    Hp59        1920x1080 at 60000/1001 fps
    Hp60        1920x1080 at 60000/1000 fps
    Hi50        1920x1080 at 25000/1000 fps (interlaced, upper field first)
    Hi59        1920x1080 at 30000/1001 fps (interlaced, upper field first)
    Hi60        1920x1080 at 30000/1000 fps (interlaced, upper field first)
    hp50        1280x720 at 50000/1000 fps
    hp59        1280x720 at 60000/1001 fps
    hp60        1280x720 at 60000/1000 fps
    4k23        3840x2160 at 24000/1001 fps
    4k24        3840x2160 at 24000/1000 fps
    4k25        3840x2160 at 25000/1000 fps
    4k29        3840x2160 at 30000/1001 fps
    4k30        3840x2160 at 30000/1000 fps
    4k50        3840x2160 at 50000/1000 fps
    4k59        3840x2160 at 60000/1001 fps
    4k60        3840x2160 at 60000/1000 fps
    4d23        4096x2160 at 24000/1001 fps
    4d24        4096x2160 at 24000/1000 fps
    4d25        4096x2160 at 25000/1000 fps
    4d29        4096x2160 at 30000/1001 fps
    4d30        4096x2160 at 30000/1000 fps
    4d50        4096x2160 at 50000/1000 fps
    4d59        4096x2160 at 60000/1001 fps
    4d60        4096x2160 at 60000/1000 fps

To specify the duplex mode that allows choosing between the input and output direction of your DeckLink SDI card, use the following global configuration:


decklink 0 {
  profile two_half;
}

decklink 1 {
  profile two_half;
}

The example above shows the configuration of a half-duplex mode for a DeckLink Duo 2 card.

Depending on the DeckLink card model, the following modes are supported:

  • one_full — bmdProfileOneSubDeviceFullDuplex
  • one_half — bmdProfileOneSubDeviceHalfDuplex
  • two_full — bmdProfileTwoSubDevicesFullDuplex
  • two_half — bmdProfileTwoSubDevicesHalfDuplex
  • four_half — bmdProfileFourSubDevicesHalfDuplex

The DeckLink Quad 2 and the DeckLink Duo 2 cards have a specific physical to logical port mapping (see Fig. 1), which affects the configuration of duplex modes.

Figure 1. Physical to logical port mapping for DeckLink Quad 2 and Duo 2.

Decklink Duo2 and Quad2 mapping

Let's configure a DeckLink Quad 2 card so that all the ports are either used as input or output.

In this case, the two_half mode should be used.

To set the two_half mode for the DeckLink Quad 2 card, use the configuration below:


decklink 0 {
  profile two_half;
}
decklink 1 {
  profile two_half;
}
decklink 2 {
  profile two_half;
}
decklink 3 {
  profile two_half;
}