Help for Decklink Duo 2 input and output

Hi,
I am a newbie on CasparCg and trying to use it as a video server which is playing live video input or disk video and giving output. I am using Decklink Duo board for input and output. I am using CasparCG Server 2.0.7 as it doesn’t require any graphic card. I am getting the input on Device\Pin 1 of Decklink Duo and Device\Pin 3 of Decklink Duo is giving the output. I am having trouble of getting SDI output. I am getting SDI output of either live video input or disk video.

Case 1: Live video input coming on SDI out but Disk video output not coming on SDI out.

Channel xml

<channel>
<video-mode>1080i5000</video-mode>
<straight-alpha-output>true</straight-alpha-output>
<channel-layout>stereo</channel-layout>
  <consumers>
<decklink>
      <device>1</device>
        <embedded-audio>true</embedded-audio>
        <channel-layout>stereo</channel-layout>
        <latency>low</latency>
        <keyer>external</keyer>
        <key-only>false</key-only>
        <buffer-depth>3</buffer-depth>
        <custom-allocator>true</custom-allocator>
    </decklink>
  </consumers>

Case 2: Disk video play coming on SDI out but live video not coming on SDI out.

<channel>
<video-mode>1080i5000</video-mode>
<straight-alpha-output>true</straight-alpha-output>
<channel-layout>stereo</channel-layout>
  <consumers>
<decklink>
      <device>3</device>
        <embedded-audio>true</embedded-audio>
        <channel-layout>stereo</channel-layout>
        <latency>low</latency>
        <keyer>external</keyer>
        <key-only>false</key-only>
        <buffer-depth>3</buffer-depth>
        <custom-allocator>true</custom-allocator>
    </decklink>
  </consumers>

Command to play Decklink input video
“PLAY 1-1 DECKLINK 1”

Command to play disk video
PLAY 1-1 “AMB.mp4”

In case 1 :
SDI out shows the live video input played, but SDI out shows black frame or no video input message in case of disk video played.

In case 2 :
SDI out shows the disk video played on CasparCG, but SDI out shows black frame or no video input message in case of live video input.

In both cases, there is no error on CasparCG console and it shows all the output or components initialized successfully. It also displays the #202 PLAY OK on console. Stop command also works fine.

Complete CasparCGConfig.xml (This one is for Disk video coming on SDI out)

E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\media log\ data\ E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\templates E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\thumbnails 1080i5000 true stereo 3 true stereo low external false 4 3 true 1080i5000 true stereo 2 true stereo low external false 3 true 5250 AMCP

Best Regards,
Puneet

Sorry for the XML complete config xml not coming correctly

For the XML to show format it using rhe </> button.

<configuration>
  <paths>
    <media-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\media</media-path>
    <log-path>log\</log-path>
    <data-path>data\</data-path>
    <template-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\templates</template-path>
    <thumbnails-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\thumbnails</thumbnails-path>
  </paths>
  <channels>
    <channel>
    <video-mode>1080i5000</video-mode>
    <straight-alpha-output>true</straight-alpha-output>
    <channel-layout>stereo</channel-layout>
      <consumers>
	<decklink>
          <device>3</device>
            <embedded-audio>true</embedded-audio>
            <channel-layout>stereo</channel-layout>
            <latency>low</latency>
            <keyer>external</keyer>
            <key-only>false</key-only>
 <key-device>4</key-device>
            <buffer-depth>3</buffer-depth>
            <custom-allocator>true</custom-allocator>
        </decklink>
      </consumers>
  </channel>
<channel>
  <video-mode>1080i5000</video-mode>
 <straight-alpha-output>true</straight-alpha-output>
    <channel-layout>stereo</channel-layout><consumers>
    <decklink>
      <device>2</device>
      <embedded-audio>true</embedded-audio>
           <channel-layout>stereo</channel-layout>
            <latency>low</latency>
            <keyer>external</keyer>
            <key-only>false</key-only>
            <buffer-depth>3</buffer-depth>
            <custom-allocator>true</custom-allocator>
    </decklink>
  </consumers>
</channel>
  </channels>
  <controllers>
    <tcp>
        <port>5250</port>
        <protocol>AMCP</protocol>
    </tcp>
  </controllers>
</configuration>

Thanks Didi Kunz for XML format

Regards,
Puneet

There are a few things questionable in your config. You can try with this one:

<configuration>
	<paths>
		<media-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\media</media-path>
		<log-path>log\</log-path>
		<data-path>data\</data-path>
		<template-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\templates</template-path>
		<thumbnails-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\thumbnails</thumbnails-path>
	</paths>
	<mixer>
		<blend-modes>false</blend-modes>
		<straight-alpha>true</straight-alpha>
		<chroma-key>false</chroma-key>
		<mipmapping_default_on>false</mipmapping_default_on>
	</mixer>
	<channels>
		<channel>
			<video-mode>1080i5000</video-mode>
			<straight-alpha-output>true</straight-alpha-output>
			<channel-layout>stereo</channel-layout>
			<consumers>
				<decklink>
					<device>1</device>
					<embedded-audio>true</embedded-audio>
					<channel-layout>stereo</channel-layout>
					<latency>low</latency>
					<keyer>external</keyer>
					<key-only>false</key-only>
					<buffer-depth>3</buffer-depth>
					<custom-allocator>true</custom-allocator>
				</decklink>
			</consumers>
		</channel>
		<channel>
			<video-mode>1080i5000</video-mode>
			<straight-alpha-output>true</straight-alpha-output>
			<channel-layout>stereo</channel-layout>
			<consumers>
				<decklink>
					<device>3</device>
					<embedded-audio>true</embedded-audio>
					<channel-layout>stereo</channel-layout>
					<latency>low</latency>
					<keyer>default</keyer>
					<key-only>false</key-only>
					<buffer-depth>3</buffer-depth>
					<custom-allocator>true</custom-allocator>
				</decklink>
			</consumers>
		</channel>
	</channels>
	<controllers>
		<tcp>
			<port>5250</port>
			<protocol>AMCP</protocol>
		</tcp>
	</controllers>
</configuration>

The difference:

  • I added the mixer block to enable straight alpha (if you need that).
  • I moved the first chanel to be on device 1 (and 2) to be able to use the external keying from control panel.
  • I moved channel 2 on device 3 as devices 1 and 2 are already gone.
  • I removed the line <key-device>4</key-device> as it does not make sense, when the keyer is external.
  • I set channel 2’s keying mode to default, as it can not be external, as you would need to use device 4 for the key out and you want to use it as input.

In BMD Decklink control panel: Switch BNC 1+2 to be an external key pair and 3+4 to be independent. Now use device 4 as input. I don’t remember if the command can stay PLAY 1-1 DECKLINK 1 or needs to be PLAY 1-1 DECKLINK 4, you need to try that. But I think it’s the first one that is correct.

Hi!
I see a few problems in this configuration…
It looks like you are setting up your “input” as consumer (which is output in Caspar). You don’t need to configure the input card in the configuration file.
Try just something like this:

<configuration>
  <paths>
    <media-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\media</media-path>
    <log-path>log\</log-path>
    <data-path>data\</data-path>
    <template-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\templates</template-path>
    <thumbnails-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\thumbnails</thumbnails-path>
  </paths>
  <channels>
        <channel>
            <video-mode>1080i5000</video-mode>
            <straight-alpha-output>true</straight-alpha-output>
            <channel-layout>stereo</channel-layout>
            <consumers>
                <decklink>
                    <device>3</device>
                    <embedded-audio>true</embedded-audio>
                    <channel-layout>stereo</channel-layout>
                    <latency>low</latency>
                    <key-only>false</key-only>
                    <buffer-depth>3</buffer-depth>
                    <custom-allocator>true</custom-allocator>
                </decklink>
            </consumers>
        </channel>
    </channels>
    <controllers>
        <tcp>
            <port>5250</port>
            <protocol>AMCP</protocol>
        </tcp>
  </controllers>
</configuration>

Did I miss something and @puneet actually needs two channels and outputs?

I don’t know, if he needs two outputs, that is what is possible with the Decklink Duo 2: One fill&key, a preview and an input. So I expected that is what he needs. I also don’t need if he really needs straight alpha out. But I expect him to ask if he does not know what that is. :smile:

@Bohoaush I only need 1 ouptut. As I was playing around the config so created 2 channels.

@didikunz I actually was trying to get output with live input and disk video. That is the first requirment.

Rest customisation will be done after I am done with this.

@ Didi Kurtz

My current config xml is

<configuration>
	<paths>
		<media-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\media</media-path>
		<log-path>log\</log-path>
		<data-path>data\</data-path>
		<template-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\templates</template-path>
		<thumbnails-path>E:\Test\New folder\CasparCG Server 2.0.7\CasparCG Server\Server\thumbnails</thumbnails-path>
	</paths>
	<channels>
		<channel>
			<video-mode>1080i5000</video-mode>
			<consumers>
				<decklink>
					<device>1</device>
				</decklink>
			</consumers>
		</channel>
	</channels>
	<controllers>
		<tcp>
			<port>5250</port>
			<protocol>AMCP</protocol>
		</tcp>
	</controllers>
</configuration>

and my current decklink duo 2 config is

now whether I play live video input (PLAY 1-1 DECKLINK 4) or play disk video (PLAY 1-1 amb.mp4), I am getting a white screen on my SDI out.

when I stop playing both live video or disk video SDI out goes to black screen.

Regards,
Puneet

Hi!
it probably means it is outputing alpha, instead of the fill.
Try adding <keyer>internal</keyer> inside decklink tags, or plugging the SDI to the second connector in the same group.
Cannot test it right now, but I remember doing something similar back when I got CasparCG working with decklink for the first time.

Decklink cards have their own logic when it comes to numbering the SDI’s, check the manuals or the technical data to find the correct SDI out for the fill. Setting the keyer to internal messes things up.

1 Like

Thanks for all the help. After going through all the variations and various settings, I found that if the Decklink video input settings are different and the output video settings are different then we don’t get any output from the decklink. After changing the video frame rate settings in the casparcg.config and the decklink input settings I am getting the valid output.