<p>Not sure exactly if this will help at all but you used to be able to do something like this:</p>

<p><code>ffmpeg -f decklink -i "DeckLink Mini Recorder (1)@7"</code></p>

<p>Where 7 is the number that is outputed in the supported formats list and the (1) is used if you have multiple decklink cards.  Again not sure if this helps you or not as I was using it for capture cards.  </p>

<p>Note on Aug of 2018 I updated my SDK version for Decklink and the firmware on my capture cards and lost the above ability.  I was still able to select the format in ffmpeg but I had to use the following:</p>

<p><code>ffmpeg -format_code Hp30 -f decklink -i "DeckLink Mini Recorder (1)"</code></p>

<p>I got the Hp30 from the output of the command:
<code>ffmpeg -f decklink -list_formats 1 -i "DeckLink Mini Recorder (1)"</code></p>

<p>The command also now does not output the numbers for the formats but instead has the format_code and description.  </p>

CC BY-SA 4.0
2018-09-11T15:53:54.593Z
2018-09-12T02:46:09.387Z
2018-09-12T02:46:09.387Z
Chris Deleo
<p>I don't see any option in the source to set output format parameters via the serial number.</p>

CC BY-SA 3.0
2017-12-05T11:09:04.653Z
2017-12-05T11:09:04.653Z
Gyan
<p>I am working on an IP-SDI decoder using ffmpeg and a Blackmagic Decklink Mini Monitor card.</p>

<p>If I list ffmpeg supported output modes with this command:</p>

<pre><code>ffmpeg -i test_1.mp4 -f decklink -list_formats 1 'DeckLink Mini Monitor'
</code></pre>

<p>I get these:</p>

<pre><code>[decklink @ 0x39b8c60] Supported formats for 'DeckLink Mini Monitor':
[decklink @ 0x39b8c60]  1       720x486 at 30000/1001 fps (interlaced, lower field first)
[decklink @ 0x39b8c60]  2       720x486 at 24000/1001 fps
[decklink @ 0x39b8c60]  3       720x576 at 25000/1000 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  4       720x486 at 60000/1001 fps
[decklink @ 0x39b8c60]  5       720x576 at 50000/1000 fps
[decklink @ 0x39b8c60]  6       1920x1080 at 24000/1001 fps
[decklink @ 0x39b8c60]  7       1920x1080 at 24000/1000 fps
[decklink @ 0x39b8c60]  8       1920x1080 at 25000/1000 fps
[decklink @ 0x39b8c60]  9       1920x1080 at 30000/1001 fps
[decklink @ 0x39b8c60]  10      1920x1080 at 30000/1000 fps
[decklink @ 0x39b8c60]  11      1920x1080 at 25000/1000 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  12      1920x1080 at 30000/1001 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  13      1920x1080 at 30000/1000 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  14      1280x720 at 50000/1000 fps
[decklink @ 0x39b8c60]  15      1280x720 at 60000/1001 fps
[decklink @ 0x39b8c60]  16      1280x720 at 60000/1000 fps
</code></pre>

<p>Ok. I can set my desired output format using -s for output size and -r for frame rate:</p>

<pre><code>/home/ffmpeg/bin/ffmpeg \
-i udp://224.168.240.69:2069?buffer_size=262144?fifo_size=4525000&amp;overrun_nonfatal=1 \
-threads 0 -vf setpts=PTS-STARTPTS \
-pix_fmt uyvy422 \
-c:a pcm_s16le -ac 2 -ar 48000 \
-s 1920x1080 -r 30000/1000 \
-f decklink DeckLink Mini Monitor
</code></pre>

<p>Is there a way to set my desired output format using ffmpeg's Supported number from the list [1..16]?</p>

<video><ffmpeg><sdi>
How to set a specific ffmpeg Decklink device output format using format number?
dalongra
# How to set a specific ffmpeg Decklink device output format using format number?

(Asked by: username_0 on 2017-12-05)

I am working on an IP-SDI decoder using ffmpeg and a Blackmagic Decklink Mini Monitor card.
If I list ffmpeg supported output modes with this command:
ffmpeg -i test_1.mp4 -f decklink -list_formats 1 'DeckLink Mini Monitor'

I get these:
[decklink @ 0x39b8c60] Supported formats for 'DeckLink Mini Monitor':
[decklink @ 0x39b8c60]  1       720x486 at 30000/1001 fps (interlaced, lower field first)
[decklink @ 0x39b8c60]  2       720x486 at 24000/1001 fps
[decklink @ 0x39b8c60]  3       720x576 at 25000/1000 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  4       720x486 at 60000/1001 fps
[decklink @ 0x39b8c60]  5       720x576 at 50000/1000 fps
[decklink @ 0x39b8c60]  6       1920x1080 at 24000/1001 fps
[decklink @ 0x39b8c60]  7       1920x1080 at 24000/1000 fps
[decklink @ 0x39b8c60]  8       1920x1080 at 25000/1000 fps
[decklink @ 0x39b8c60]  9       1920x1080 at 30000/1001 fps
[decklink @ 0x39b8c60]  10      1920x1080 at 30000/1000 fps
[decklink @ 0x39b8c60]  11      1920x1080 at 25000/1000 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  12      1920x1080 at 30000/1001 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  13      1920x1080 at 30000/1000 fps (interlaced, upper field first)
[decklink @ 0x39b8c60]  14      1280x720 at 50000/1000 fps
[decklink @ 0x39b8c60]  15      1280x720 at 60000/1001 fps
[decklink @ 0x39b8c60]  16      1280x720 at 60000/1000 fps

Ok. I can set my desired output format using -s for output size and -r for frame rate:
/home/ffmpeg/bin/ffmpeg \
-i udp://224.168.240.69:2069?buffer_size=262144?fifo_size=4525000&overrun_nonfatal=1 \
-threads 0 -vf setpts=PTS-STARTPTS \
-pix_fmt uyvy422 \
-c:a pcm_s16le -ac 2 -ar 48000 \
-s 1920x1080 -r 30000/1000 \
-f decklink DeckLink Mini Monitor

Is there a way to set my desired output format using ffmpeg's Supported number from the list [1..16]?

**Tags:** video, ffmpeg, sdi


---

## 2 answers

### Answer by username_1 on 2018-09-11. Score: 2

Not sure exactly if this will help at all but you used to be able to do something like this:

`ffmpeg -f decklink -i "DeckLink Mini Recorder (1)@7"`

Where 7 is the number that is outputed in the supported formats list and the (1) is used if you have multiple decklink cards. Again not sure if this helps you or not as I was using it for capture cards.

Note on Aug of 2018 I updated my SDK version for Decklink and the firmware on my capture cards and lost the above ability. I was still able to select the format in ffmpeg but I had to use the following:

`ffmpeg -format_code Hp30 -f decklink -i "DeckLink Mini Recorder (1)"`

I got the Hp30 from the output of the command:
`ffmpeg -f decklink -list_formats 1 -i "DeckLink Mini Recorder (1)"`

The command also now does not output the numbers for the formats but instead has the format\_code and description.


---

### Answer by username_2 on 2017-12-05. Score: 2

I don't see any option in the source to set output format parameters via the serial number.


---

