Code: Select all
sudo gdebi mythtv-light_31.0-158-g0680b37c68-0_armhf_buster.deb
Code: Select all
This package is uninstallable
Dependency is not satisfiable: libexiv2-14
I'll see if I can build from source.
Code: Select all
sudo gdebi mythtv-light_31.0-158-g0680b37c68-0_armhf_buster.deb
Code: Select all
This package is uninstallable
Dependency is not satisfiable: libexiv2-14
Code: Select all
#!/bin/bash
# script to run mythfrontend from version 31 on Raspberry Pi under Raspian Buster using EGLFS
# can be added to .bashrc to allow autostart of mythfrontend on boot
# Last Modified 24 July 2020
# Author Mike Bibbings
# check if running via SSH, if so skip running mythfrontend, it must only run locally.
SSH=$(printenv | grep SSH_CLIENT)
if [ -n "$SSH" ]; then
# echo "run_mythfrontend.sh cannot be run over ssh"
exit 1
fi
#check mythfrontend has been installed, if not abort with message
MYTHFRONTEND=`which mythfrontend`
if [ -z "$MYTHFRONTEND" ]; then
echo -e "mythfrontend not found - please install MythTV-Light package"
echo -e "See 'https://www.mythtv.org/wiki/MythTV_Light'\n"
exit 1
fi
#check for any arguments on command line, if so use for mythfrontend command, so we can use different parameters
#e.g. run_mythfrontend.sh --logpath /home/pi --loglevel debug
# if no arguments set --logpath /tmp
if [ -z "$*" ] ; then
ARGUMENTS="--logpath /tmp"
else
ARGUMENTS="$*"
fi
echo "Starting MythTV Frontend -- this may take a few seconds -- Please wait"
PI_MODEL=$(grep -ic 'Pi 4' /proc/device-tree/model)
# set perfomance mode, not sure if needed for Pi4, do it anyway
echo performance | sudo tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
#strip out everything except resolution e.g. 1920x1080
CURRENT_RES=1920x1080
RESOLUTION="$CURRENT_RES@60"
echo "Setting screen to $RESOLUTION"
# we need override file to force correct resolution.
# QT defaults to using EDID from connected hdmi device
# pi2/3 use /dev/dri/card0, pi4 /dev/dri/card1
# find out which model of Pi we have
if [ "$PI_MODEL" = 1 ]
then
CARD="card1"
else
CARD="card0"
fi
#file created everytime this script is run,avoids checking previous and current resolution everytime
bash -c "cat >/home/pi/pi_mythfrontend.json" <<ENDOFSCRIPTINPUT
{
"device": "/dev/dri/${CARD}",
"outputs": [
{ "name": "HDMI1", "mode": "${RESOLUTION}" }
]
}
ENDOFSCRIPTINPUT
#for QT debug add to command line QT_QPA_EGLFS_DEBUG=1 QT_LOGGING_RULES=qt.qpa.*=true
QT_QPA_EGLFS_ALWAYS_SET_MODE="1" QT_QPA_PLATFORM=eglfs QT_QPA_EGLFS_KMS_CONFIG=/home/pi/pi_mythfrontend.json mythfrontend $ARGUMENTS
# fixup keyboard after exit from mythfrontend, bug in QT causes segment fault which kills keyboard input
kbd_mode -u
# restore cursor
setterm --cursor on
exit 0
Code: Select all
sudo apt install git g++ make build-essential nasm automake libtool ccache pkg-config libtool-bin uuid-dev libfreetype6-dev libmp3lame-dev libxv-dev libxxf86vm-dev libxinerama-dev libxrandr-dev libxml2-dev libavahi-compat-libdnssd-dev libexiv2-dev libasound2-dev libegl1-mesa-dev liblzo2-dev libhdhomerun-dev libsamplerate0-dev libxnvctrl-dev libva-dev libdrm-dev libvdpau-dev libass-dev libxvidcore-dev libx264-dev libvpx-dev libbluray-bdj libavc1394-dev libiec61883-dev libpulse-dev libfftw3-dev libssl-dev libsystemd-dev libgnutls28-dev libcec-dev libavc1394-dev libiec61883-dev libpulse-dev libfftw3-dev libssl-dev libsystemd-dev libbluray-dev libx265-dev python3-future python3-requests python3-requests-cache python3-mysqldb python3-lxml python3-oauth python3-pycurl python3-simplejson libdbi-perl libdbd-mysql-perl libnet-upnp-perl libwww-perl libio-socket-inet6-perl libdate-manip-perl libxml-simple-perl libxml-xpath-perl libimage-size-perl libdatetime-format-iso8601-perl libsoap-lite-perl libjson-perl libvorbis-dev libflac-dev libflac++-dev libtag1-dev libcdio-dev libcdio-paranoia-dev libminizip-dev libqt5core5a libqt5webkit5-dev libqt5opengl5-dev libqt5script5 qtscript5-dev qt5-qmake libqt5sql5-mysql libsoundtouch-dev libzip-dev
Code: Select all
MYTHTV_CONFIG_OPT_EXTRA="--disable-vdpau --enable-opengl --disable-vaapi --arch=armv7"
Code: Select all
MYTHTV_CONFIG_OPT_EXTRA="--disable-vdpau --enable-opengl --disable-vaapi --arch=aarch64
At this point I only have the .deb file for what I'm running which is Bullseye 64 bits v32-pre that was built using a development version that is testing merging in ffmpeg 4.4.1. It works great and I think its the best I've seen so far. However, it would mean you need a v32 or Master backend, Or you need to just build a combo FE/BE. (Use pi-mythbackend-helper.sh from https://github.com/MikeB2013/pi-utils)
did you do all the raspberry OS updates??zachron wrote: ↑Fri Nov 26, 2021 3:38 pmquestion about running on bullseye and the new kms driver, what audio device do you use? it list a bunch for me, but they are all "headphones" and i cannot get any audio to go out via the HDMI. That is with a clean install from the 2021-10-30-raspios-bullseye-arm64-lite.zip image and the myth deb file you built. Any ideas are appreciated, or maybe i am just missing something obvious.
i thought i had done this, but apparently i had not, after doing a full-update, "ALSA:hdmi:CARD=vc4hdmi0" showed up for me and everything seems to be working correctly, so thank you.did you do all the raspberry OS updates??
This morning I added the .deb file for the one I'm using. If you are building a combo with a backend then you can use that to compare video performance.
It's based on the Master v32~Pre but the devel/ffmpeg-resync branch. It's just for testing. On the RPI4 I think it is better that even Master.mythtv-light_test_32~Pre-2989-g1147ad9a91-0_arm64_bullseye.deb