Use official ffmpeg 4.4.2 with Matrix
Doing so SEEMS TO avoid sporatic A/V sync issues with concomitant lines in the log like:
ActiveAE - large audio sync error: -89515.453679
ActiveAE - large audio sync error: -89515.536515
CVideoReferenceClock: detected 1 vblanks, missed 2, refreshrate might have changed
Also fixes broken HW accel decoding on more recent kernels, see: https://github.com/raspberrypi/linux/issues/5136
* New upstream target for HW accel is jc-kynesim/dev/4.3.2/clean_3 branch
* Build on Arch ARM now works naively ie without PKGBUILD hacks[1]
1. https://github.com/jc-kynesim/rpi-ffmpeg/pull/5
Fixes broken HW decoding. Root cause is missing kernel definitions supplied by
the rpi-5.10.y tree that are not mainlined; although linux-api-headers provides
the same file, e.g. /usr/include/linux/videodev2.h, the key definitions are
lacking.
Rather than creating another package[1] to supply kernel-api-headers built from
the rpi-5.10.y tree, we can define the missing defines directly in ffmpeg's
source via a patch. Credit to Dobroslaw Kijowski.
1. 481a5da6b3
Major change here is moving kodi.service from system.slice into user.slice.
Several positive tangibles include:
* Ability to use USB drives directly in Kodi GUI.
* More simplistic use/configuration of pulseaudio for more advanced setups.
Another effect of this change is that calling `systemctl reboot` will not
result in a gracefully exit and some profile data will be lost since systemd
frankly, brutally kills user.slice cgs. In principal this is no different
than data loss occurring from a user doing work when a sysadmin issues a reboot
command without prior warning.
The newly included man page and post_upgrade message will inform users of this
and suggest several alternatives.
This commit also introduces a simplification to packaging by using a versioned
upstream source for init files instead of providing these six files on a per-
-package-basis.