DeckLink Mini-Recorder HDMI Input

Ask software engineering and SDK questions for developers working on Mac OS X, Windows or Linux.
  • Author
  • Message
Offline

JonathanGailliez

  • Posts: 4
  • Joined: Tue Jun 30, 2015 12:36 pm

DeckLink Mini-Recorder HDMI Input

PostTue Jun 30, 2015 1:21 pm

Hello everyone,

I'm new at using the Decklink SDK and I have a question for you. How can I select the HDMI video input instead of the SDI one to capture frames with the Decklink SDK?

Let me give you some context.

I've installed successfully the Decklink Mini-Recorder card on an Ubuntu 14.04(LTS) machine. I tried the Capture.cpp sample code provided with the SDK and I didn't manage to capture any frame with it. See the following output:

Code: Select all
administrator@support:~/Linux/Samples/Capture$ ./Capture -d 0 -m -1
Capturing with the following configuration:
 - Capture device: DeckLink Mini Recorder
 - Video mode: Format Detection
 - Pixel format: 8 bit YUV (4:2:2)
 - Audio channels: 2
 - Audio sample depth: 16 bit
Frame received (#0) - No input signal detected
Frame received (#1) - No input signal detected
Frame received (#2) - No input signal detected
Frame received (#3) - No input signal detected
Frame received (#4) - No input signal detected
Frame received (#5) - No input signal detected
Frame received (#6) - No input signal detected
Frame received (#7) - No input signal detected
Frame received (#8) - No input signal detected
Frame received (#9) - No input signal detected


I tried all the 14 input video mode and still no luck. I then installed the GUI tools provided and MediaExpress. I still couldn't capture any frame even within MediaExpress. I then used the GUI tool called "Blackmagic Desktop Video Utility" to explicitly switch from the SDI input to the HDMI one (see screenshot below). As soon as I did that, I was able to capture frames with MediaExpress and the Capture.cpp sample code. See the following output:

Code: Select all
administrator@support:~/Linux/Samples/Capture$ ./Capture -d 0 -m -1
Capturing with the following configuration:
 - Capture device: DeckLink Mini Recorder
 - Video mode: Format Detection
 - Pixel format: 8 bit YUV (4:2:2)
 - Audio channels: 2
 - Audio sample depth: 16 bit
Frame received (#0) - No input signal detected
Video format changed to 720p50
Frame received (#1) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#2) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#3) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#4) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#5) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#6) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#7) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#8) [No timecode] - Valid Frame - Size: 1843200 bytes
Frame received (#9) [No timecode] - Valid Frame - Size: 1843200 bytes

I'll need to run the video acquisition code on a server with no graphical environment. I wont be able to use the
"Blackmagic Desktop Video Utility" GUI tool.

My question is: How can I select the HDMI video input instead of the SDI one to capture frames with the Decklink SDK? Is there any command line tool that can allow me to configure the Mini-Recorder card such way?

Thank you for the time you've spent reading and/or answering me.

Best regards,
Jonathan.



Image


Here is the output of the DeviceList sample code:
Code: Select all
administrator@support:~/Linux/Samples/bin/x86_64$ ./DeviceList
=============== DeckLink Mini Recorder ===============

Attribute list:
 Serial port present ?                    No
 Device Persistent ID:                    9b24792e
 Device Topological ID:                   430300
 Number of sub-devices:                   1
 Sub-device index:                        0
 Number of audio channels:                16
 Input mode detection supported ?         Yes
 Full duplex operation supported ?        No
 Internal keying supported ?              No
 External keying supported ?              No
 HD-mode keying supported ?               Yes

Could not obtain the IDeckLinkOutput interface - result = 80000004
Supported video input display modes and pixel formats:
 NTSC                    720 x 486     29.97 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 PAL                     720 x 576        25 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080p23.98              1920 x 1080    23.976 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080p24                 1920 x 1080        24 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080p25                 1920 x 1080        25 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080p29.97              1920 x 1080     29.97 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080p30                 1920 x 1080        30 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080i50                 1920 x 1080        25 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080i59.94              1920 x 1080     29.97 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 1080i60                 1920 x 1080        30 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 720p50                  1280 x 720         50 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 720p59.94               1280 x 720    59.9401 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   
 720p60                  1280 x 720         60 FPS   8-bit YUV  10-bit YUV  ------    ------    ------    ------    ------    ------    ------   

Supported video output connections:
 

Supported video input connections:
  SDI, HDMI
Offline

Christoph Willing

  • Posts: 25
  • Joined: Fri Jul 12, 2013 10:11 am
  • Location: Brisbane, Australia

Re: DeckLink Mini-Recorder HDMI Input

PostWed Jul 01, 2015 3:13 am

This may be a bit clunky and I've never had to actually try it but ...
now that you have a configuration that works, find the configuration file that will have been created when you ran the BM Desktop Utility. On my system, that location is /etc/blackmagic/BlackmagicPreferences.xml. I'm guessing you could just copy it to any new machine on which you've installed another board of the same type.

chris
Offline

JonathanGailliez

  • Posts: 4
  • Joined: Tue Jun 30, 2015 12:36 pm

Re: DeckLink Mini-Recorder HDMI Input

PostWed Jul 01, 2015 8:45 am

Hi Christoph,

thanks a lot for your suggestion, I've just tried it and it works. As you say it's a bit clunky and I'll wait to know if someone has a better way to do it. But for my tests it will do the trick.

Does someone have another suggestion?

Best regards,
Jonathan.
Offline

Dave Johnstone

  • Posts: 223
  • Joined: Mon Dec 08, 2014 11:12 am
  • Location: Adelaide

Re: DeckLink Mini-Recorder HDMI Input

PostWed Jul 01, 2015 11:58 pm

Hi Jonathan,

Can you set bmdDeckLinkVideoInputConnection to the input of your choice? I believe SDI=1, HDMI=2.

Regards,

Dave.
Freelance Television Broadcast Engineer
and Software Programmer.
Offline

Christoph Willing

  • Posts: 25
  • Joined: Fri Jul 12, 2013 10:11 am
  • Location: Brisbane, Australia

Re: DeckLink Mini-Recorder HDMI Input

PostFri Jul 03, 2015 7:16 am

A less clunky way to change the input is to do it programmatically. I've made a little application that can do it - feel free to try it from https://github.com/cwilling/decklinkpreferences

After building, install the executable on a machine with the decklink card, somewhere in the PATH of whichever user will be running it; then at any time ssh to the machine and run the executable. If you want to save the setting you make, ensure the user has write permission on the BlackmagicPreferences.xml file.

You could easily add the bit that actually does the work into the Capture application itself (if that's what you'll be using in your workflow).

chris
Offline

JonathanGailliez

  • Posts: 4
  • Joined: Tue Jun 30, 2015 12:36 pm

Re: DeckLink Mini-Recorder HDMI Input

PostFri Jul 03, 2015 1:50 pm

Hi everyone,

Dave thanks a lot for your suggestion. It's actually what Christoph allow to achieve with his program.

Christoph thank you so much for taking the time to put this together. I'll use your program as a tool for development and test and use the piece of code I'm interested in our production code.

Best regards,
Jonathan.

Return to Software Developers

Who is online

Users browsing this forum: No registered users and 18 guests