site  contact  subhomenews

Shotcut video editor compiled in OE

July 31, 2023 — BarryK

A couple of months ago, I decided to use Kdenlive video editor, as I thought that it is the only one that supports voice-over directly from a microphone -- among the open-source free video editors that is. Posted about it:

https://bkhome.org/news/202305/fixed-kdenlive-project-setup.html

Surprise, surprise, yesterday stumbled upon a YouTube video showing that it can be done in Shotcut. In fact, there are a few of them, such as these:

https://www.youtube.com/watch?v=KelNdcN_Z2g

https://www.youtube.com/watch?v=bVp_joi-k70

...that last one also has a web page:

https://ubitronics.co.uk/how-to-create-voice-overs-in-shotcut/

That's great, so decided to compile it in OpenEmbedded/Yocto. The Shotcut developers have moved on to Qt6, so I grabbed the last source that uses Qt5 -- same version that Debian Bookworm is using.

Being Qt-based, not KDE-based, makes it much easier to compile in OE. This morning got stuck into it, and this is the build recipe:

https://github.com/bkauler/oe-qky-kirkstone/blob/61221fcc160079334e25b1897289ef61c3dd7284/quirky/meta-quirky/recipes-multimedia/shotcut/shotcut_22.12.21%2Bds.bb

# Recipe created by recipetool
# recipetool create -o shotcut_22.12.21+ds.bb http://deb.debian.org/debian/pool/main/s/shotcut/shotcut_22.12.21+ds.orig.tar.xz

LICENSE = "GPL-3.0-only & LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
file://CuteLogger/LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
file://drmingw/doc/LICENSE-libdwarf.txt;md5=f6cfadeff118dbf73dcc5212d5c23772"

SRC_URI = "http://deb.debian.org/debian/pool/main/s/shotcut/shotcut_22.12.21%2Bds.orig.tar.xz"

SRC_URI[md5sum] = "f5e634ea42378775762b81fb9b607a38"
SRC_URI[sha256sum] = "bd17764cfaa0243f1f635d3697979c5771e519ba3de6ec541cbdcacf1905f521"

inherit cmake_qt5 pkgconfig gettext python3-dir python3native mime mime-xdg

DEPENDS = "mlt frei0r ffmpeg qtbase qtdeclarative qtscript qtsvg \
qttools qtx11extras qtxmlpatterns qtmultimedia qtwebsockets \
qtquickcontrols2 libsdl2 libsdl2-image libsdl2-mixer libsdl2-net \
libsdl2-ttf lame x264 x265 pulseaudio alsa-lib \
qt5-styleplugins qtimageformats desktop-file-utils \
qtbase-native qtdeclarative-native qttools-native qtxmlpatterns-native"

EXTRA_QMAKEVARS_PRE += "DEFINES+=SHOTCUT_NOUPGRADE DEFINES+=NDEBUG"

EXTRA_OECMAKE = ""

#ERROR: shotcut-22.12.21+ds-r3 do_package_qa: QA Issue: -dev package shotcut-dev contains non-symlink .so '/usr/lib/libCuteLogger.so' [dev-elf]
ERROR_QA:remove = "dev-elf"
#ERROR: shotcut-22.12.21+ds-r3 do_package_qa: QA Issue: shotcut rdepends on shotcut-dev [dev-deps]
ERROR_QA:remove = "dev-deps"

HOMEPAGE = "https://shotcut.org/"
SUMMARY = "Video editor"

Here is the Shotcut homepage:

https://shotcut.org/

img1

In the next release of Easy, there will be a pre-install entry in the menu and in EasyApps; that "orange ball" icon thing that I introduced recently:

https://bkhome.org/news/202307/menu-entries-for-not-yet-installed-apps.html

I'm very keen to have a native video editor, instead of those AppImages and Flatpacks. Hmmm, if it turns out that I will use it on a regular basis, might have a go at squeezing it, and it's dependencies, builtin to 'easy.sfs'.

All of the above is very nice, but I haven't actually tested if Shotcut works. Will do that very soon.

EDIT:
Shotcut runs, but unfortunately is badly broken, the timeline does not work. I had already reported this to the Shotcut developers back in January 2022, with a snapshot:

https://github.com/mltframework/shotcut/issues/1057

As it is a very active project, I had expected that bug to have been solved by now. But no. In fact, looking at recent issues, the timeline is still broken, such as this:

https://github.com/mltframework/shotcut/issues/1445

That is disappointing. Actually, looking at that snapshot posted to issue #1057, there is one improvement; now get the toolbar in the timeline, just cannot create any tracks.    

Tags: easy