How to Capture Dual-Link SDI Using DeckLink and FFmpeg

This article provides a step-by-step guide on how to capture a high-bandwidth dual-link SDI video source using a Blackmagic Design DeckLink capture card and FFmpeg. You will learn how to configure your Blackmagic hardware drivers to combine two physical SDI inputs into a single logical stream and write the appropriate FFmpeg command to capture and encode the incoming feed.

Before running FFmpeg, you must configure your DeckLink card to treat two physical SDI ports as a single dual-link input. This is done via the Blackmagic Desktop Video Setup utility.

  1. Open the Blackmagic Desktop Video Setup application on your system.
  2. Select your DeckLink card (e.g., DeckLink 8K Pro or DeckLink Duo 2).
  3. Go to the Video Input or Connector Mapping settings.
  4. Change the connector mapping from single-link ports to a dual-link configuration (often labeled as “SDI 1 & 2” or “Dual Link”). This groups the physical inputs so the driver presents them to FFmpeg as a single video device.

FFmpeg needs the exact name of your DeckLink device to target the input. You can list all connected Blackmagic devices by running the following command in your terminal:

ffmpeg -f decklink -list_devices 1 -i dummy

Look at the output to find the name of the grouped dual-link input, which will look something like "DeckLink 8K Pro (1)" or "DeckLink Duo (1)".

Once the driver is configured and you have the device name, you can capture the feed. Because dual-link SDI is typically used for high-quality formats (such as 10-bit 4:2:2 or 4:4:4 video), it is important to specify the correct pixel format and video format in your FFmpeg command.

Use the following template to capture the dual-link SDI source and encode it:

ffmpeg -f decklink -raw_format yuv422p10 -i "DeckLink 8K Pro (1)" -c:v libx264 -pix_fmt yuv420p -c:a aac output.mp4

Command Breakdown:

Troubleshooting Tips