amiaopensource / vrecord

Vrecord is open-source software for capturing a video signal and turning it into a digital file.
https://github.com/amiaopensource/vrecord
149 stars 44 forks source link

Could not create DeckLink iterator. #734

Closed bishbashbackup closed 1 year ago

bishbashbackup commented 1 year ago

Hiya,

I recently did a brew update/upgrade on an Ubuntu 20.04.5 LTS workstation, which has vrecord installed. It was working fine before the update, but now vrecord fails to find my decklink duo card. It gives the error:

libDeckLinkAPI.so: cannot open shared object file: No such file or directory [decklink @ 0x32d6b00] Could not create DeckLink iterator. Make sure you have DeckLink drivers 10.11.2 or newer installed.

I've got Desktop Video 12.2.2 installed. Running:

dkms status -m blackmagic-io -k uname -r

Returns:

blackmagic-io, 12.2.2a6, 5.14.0-1054-oem, x86_64: installed

Any ideas on how to fix this? Thanks in advance :)

privatezero commented 1 year ago

Hi @alexhabgood, I don't have an Ubuntu 20.04 machine that I can test with an actual Blackmagic device, so I can't try to recreate your issue exactly, so kind of guessing as to possible fixes. Have you tried reinstalling ffmpegdecklink?

bishbashbackup commented 1 year ago

Hi @privatezero

Thanks for responding, greatly appreciated.

I've done some updates to my system. Now on Ubuntu 22.04.1 LTS. Blackmagic drivers have also been updated to the latest 12.4.1. Have tested Media Express and that's working fine.

Subsequently I tried brew reinstall ffmpegdecklink and that goes through fine without any errors.

Now when I boot vrecord -e is doesn't show the decklink iterator error. However my decklink card still isn't showing in the settings menu. It also now returns the error:

/home/linuxbrew/.linuxbrew/opt/ffmpegdecklink/bin/ffmpeg-dl: error while loading shared libraries: libraw1394.so.11: cannot open shared object file: No such file or directory

I tried reinstalling libraw1394-dev. But that didn't change anything.

privatezero commented 1 year ago

Hi @alexhabgood - that library is related to the DV capture functionality so that at least suggests a bit of an avenue for trouble shooting. As a bit of triage, does reinstalling ffmpegdecklink without enabling --with-iec61883 result in a more functional build that at least can work with Blackmagic?

bishbashbackup commented 1 year ago

@privatezero

I reinstalled ffmpegdecklink without iec61883. See the attached log.

When I launch vrecord it now gives me the error:

/home/linuxbrew/.linuxbrew/opt/ffmpegdecklink/bin/ffmpeg-dl: error while loading shared libraries: libasound.so.2: cannot open shared object file: No such file or directory

I tried reinstalling libasound2, but that didn't change anything. Decklink card still isn't showing in the settings menu either.

I also ran ldconfig -v, but that seems to be fine, with libasound2 present (also attached).

Running ldd $(which ffmpeg-dl) | grep libasound, returns:

libasound.so.2` => /lib/x86_64-linux-gnu/libasound.so.2 (0x00007f9b788fd000)

ls -l /lib/x86_64-linux-gnu/libasound.so.2, returns:

lrwxrwxrwx 1 root root 18 Jan 19 2022 /lib/x86_64-linux-gnu/libasound.so.2 -> libasound.so.2.0.0

ls -l /lib/x86_64-linux-gnu/libasound.so.2.0.0, returns:

-rw-r--r-- 1 root root 1055472 Jan 19 2022 /lib/x86_64-linux-gnu/libasound.so.2.0.0

ffmpegdecklink_install.txt ldconfig.txt

bishbashbackup commented 1 year ago

Hi @privatezero

Tried running pulseaudio and discovered it was also having dificulty finding shared libraries. Thought it might be something fundamentally broken in my homebrew install, so I completely uninstalled homebrew and all packages. Then tried reinstalling vrecord and managed to get it working. When I did the reinstall I did experience issue #731, but bypassed it by just not installing deckcontrol.

Not entirely sure what went wrong, but will close this now. Thanks for your help. :)