Package Details: decklink 14.4.1-1

Git Clone URL: https://aur.archlinux.org/decklink.git (read-only, click to copy)
Package Base: decklink
Description: Drivers for Blackmagic Design DeckLink, Intensity or Multibridge video editing cards
Upstream URL: https://www.blackmagicdesign.com/support/family/capture-and-playback
Licenses: custom
Submitter: alub
Maintainer: goldensuneur
Last Packager: goldensuneur
Votes: 24
Popularity: 0.000000
First Submitted: 2015-10-03 15:38 (UTC)
Last Updated: 2025-01-28 15:09 (UTC)

Pinned Comments

goldensuneur commented on 2020-03-02 19:00 (UTC)

I finally had time to investigate the issue. It looks like that as of 11.5, the DesktopVideoHelper.service has to be running for the capture card to work properly.

Latest Comments

1 2 3 4 5 6 .. 25 Next › Last »

ToadKing commented on 2025-02-04 02:17 (UTC) (edited on 2025-02-04 02:19 (UTC) by ToadKing)

Building the module is broken on 6.13.1 kernel

make -C /lib/modules/6.13.1-arch1-1/build M=/var/lib/dkms/blackmagic-io/14.4.1a4/build
make[1]: Entering directory '/usr/lib/modules/6.13.1-arch1-1/build'
make[2]: Entering directory '/var/lib/dkms/blackmagic-io/14.4.1a4/build'
  CC [M]  bmio_client.o
  CC [M]  bmio_dev.o
  CC [M]  bmio_device.o
  CC [M]  bmio_driver.o
  CC [M]  bmio_serial.o
  CC [M]  bmio_export.o
  CC [M]  bmio_pci_ids.o
  CC [M]  bm_locks.o
  CC [M]  bm_mm.o
  CC [M]  bm_pci.o
make[4]: *** No rule to make target 'blackmagic.o', needed by 'blackmagic-io.o'.  Stop.
make[4]: *** Waiting for unfinished jobs....
  CC [M]  bm_util.o
bm_util.c:123:9: warning: "MAX" redefined
  123 | #define MAX(a, b) ((a) > (b) ? (a) : (b))
      |         ^~~
In file included from /usr/lib/modules/6.13.1-arch1-1/build/include/linux/kernel.h:28,
                from /usr/lib/modules/6.13.1-arch1-1/build/include/linux/cpumask.h:11,
                from /usr/lib/modules/6.13.1-arch1-1/build/arch/x86/include/asm/paravirt.h:21,
                from /usr/lib/modules/6.13.1-arch1-1/build/arch/x86/include/asm/cpuid.h:64,
                from /usr/lib/modules/6.13.1-arch1-1/build/arch/x86/include/asm/processor.h:19,
                from /usr/lib/modules/6.13.1-arch1-1/build/include/linux/sched.h:13,
                from /usr/lib/modules/6.13.1-arch1-1/build/include/linux/delay.h:13,
                from bm_util.c:27:
/usr/lib/modules/6.13.1-arch1-1/build/include/linux/minmax.h:330:9: note: this is the location of the previous definition
  330 | #define MAX(a,b) __cmp(max,a,b)
      |         ^~~
make[3]: *** [/usr/lib/modules/6.13.1-arch1-1/build/Makefile:1989: .] Error 2
make[2]: *** [/usr/lib/modules/6.13.1-arch1-1/build/Makefile:251: __sub-make] Error 2
make[2]: Leaving directory '/var/lib/dkms/blackmagic-io/14.4.1a4/build'
make[1]: *** [Makefile:251: __sub-make] Error 2
make[1]: Leaving directory '/usr/lib/modules/6.13.1-arch1-1/build'
make: *** [Makefile:47: all] Error 2

goldensuneur commented on 2024-10-15 07:46 (UTC)

Hi francisqureshi, I don't own a working capture card anymore so I only check if the driver builds on linux and linux-lts but I cannot check if it works fine when in use.

sploders101 commented on 2024-10-14 20:32 (UTC) (edited on 2024-10-14 20:32 (UTC) by sploders101)

In addition to enabling DesktopVideoHelper.service, I also had to put ibt=off in my kernel cmdline to keep the driver from crashing on kernel 6.11.3-arch1-1.

francisqureshi commented on 2024-10-14 17:07 (UTC) (edited on 2024-10-14 17:07 (UTC) by francisqureshi)

Hey there goldensuneur, thanks for all your efforts. Is it possible to use this with the latest kernels? Or more importantly, what version kernel do you recommend to use this decklink package?

icedream commented on 2024-05-07 22:13 (UTC) (edited on 2024-05-07 22:14 (UTC) by icedream)

I've basically copied a good chunk of the routines over into the PKGBUILD a while ago (forgot to post it here) and it seems to work.

Linking the patch here: https://raw.githubusercontent.com/icedream/customizepkg-config/4db6a787dfe6ad9a5a9d99bd8f2d1402f063e495/decklink.patches/0001-Add-signing-key-generation-post-install-secure-boot-.patch

I was hoping for someone to come up with a more simple, Arch-ified solution but this is the best I can do at the moment.

goldensuneur commented on 2024-04-16 13:21 (UTC)

I won't have the time to make the change in the next days so don't hesitate to make a patch and send it here. I'll update the PKGBUILD with it

icedream commented on 2024-04-16 00:40 (UTC) (edited on 2024-04-16 01:02 (UTC) by icedream)

Apparently the RPM spec has additional commands to get the driver to work on PCs with secure boot enabled, and that's the case on my Arch install. There's information about it in the ReadMe.txt section "Secure Boot" but the gist of it is:

  • It creates /var/lib/blackmagic/openssl.cnf and uses that configuration with OpenSSL to generate key & cert /var/lib/blackmagic/MOK.{priv,der}.
  • It checks for a script update-secureboot-policy in PATH
    • If it does not exist: It asks the user to enroll the key with sudo mokutil --import /var/lib/blackmagic/MOK.der, either non-interactively or interactively depending on whether running in TTY or not.
    • If it does exist: The script relies on the existence of /var/lib/shim-signed/mok/MOK.der (which supposedly is where the MOK is normally stored for shim?) instead. Other than that, same as above.
  • Blackmagic's dkms-helper script takes these two files (key/cert paths are hardcoded!) and signs the module itself with them but these files never got generated in our install script, hence the error messages.

Considering that there's many ways Arch can be set up with Secure Boot, maybe it's better to just port the part that generates the files to allow DKMS to not throw errors but instruct the user to enroll the keys if necessary with whatever method they used. I say "if necessary" because apparently my secure boot setup does not even require these modules to be signed properly...?

icedream commented on 2024-04-16 00:27 (UTC) (edited on 2024-04-16 00:28 (UTC) by icedream)

On install, I get the following messages (focusing on the SSL errors here, seem to be related to driver signing or something like that as it uses a "MOK" key file that isn't there?), I'm still checking on what could be the cause of this. A reinstall does not help.

(4/9) Install DKMS modules
==> dkms install --no-depmod blackmagic-io/12.9a3 -k 6.8.6-AMD
At main.c:167:
- SSL error:FFFFFFFF80000002:system library::No such file or directory: crypto/bio/bss_file.c:67
- SSL error:10000080:BIO routines::no such file: crypto/bio/bss_file.c:75
sign-file: /var/lib/blackmagic/MOK.priv
ERR The driver was not able to be unloaded because it is in use
ERR You will need to reboot to use the new driver
==> dkms install --no-depmod blackmagic-io/12.9a3 -k 6.8.5-arch1-1
At main.c:167:
- SSL error:FFFFFFFF80000002:system library::No such file or directory: crypto/bio/bss_file.c:67
- SSL error:10000080:BIO routines::no such file: crypto/bio/bss_file.c:75
sign-file: /var/lib/blackmagic/MOK.priv
==> dkms install --no-depmod blackmagic/12.9a3 -k 6.8.5-arch1-1
At main.c:167:
- SSL error:FFFFFFFF80000002:system library::No such file or directory: crypto/bio/bss_file.c:67
- SSL error:10000080:BIO routines::no such file: crypto/bio/bss_file.c:75
sign-file: /var/lib/blackmagic/MOK.priv

goldensuneur commented on 2024-03-11 21:26 (UTC)

Thanks I missed this version in their RSS feed. I pushed a new version with simple patches for the build. As usual it builds on my machine but I cannot test it.

icedream commented on 2024-03-11 17:18 (UTC)

Got 12.8.1 with the following patch (hence will mark the package as outdated) but unfortunately it still fails on kernel 6.8.0.

diff --git a/PKGBUILD b/PKGBUILD
index df5908e..2ca4373 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,3 +4,3 @@ pkgname=(decklink mediaexpress)
 _pkgname=decklink
-pkgver=12.7
+pkgver=12.8.1
 pkgrel=1
@@ -16,3 +16,3 @@ options=('!strip' 'staticlibs')

-_pkgsrc_url="https://www.blackmagicdesign.com/api/register/us/download/b94e51eb5c6c45c48a04b09b72989448"
+_pkgsrc_url="https://www.blackmagicdesign.com/api/register/us/download/0636d85539fd4446a24f5952223cc1ec"
 _pkgsrc_file=${_pkgname}-${pkgver}.tar.gz
@@ -33,3 +33,3 @@ source=("${_pkgsrc_file}"::"${_pkgsrc_url}"
     )
-sha256sums=('71c8b827e80f2c42e742acf0239fca173261eb7afe31c34944ffe30176226a14')
+sha256sums=('aff42d039fe1d1fbe5c5df61f0b2434a75067a4e3c861a705dff5f4083e60c02')