I have a working build of MythFrontend 30. By working, I mean it does the job with the normal quirks we've come accustomed to with MythFrontend on the Mac these past several years. I've run it on 10.11 El Capitan and 10.14 Mojave. Some new quirks I ran into coming from MythFrontend 29:
- On a Mac where I run it windowed, the deinterlacer was useless until I switched from 'one field' to 'bob.
- On a Mac where I run fullscreen (not in a window), I can no longer hide MythFrontend. The menu item is disabled. Instead it runs in its own Space, which is okay, but not as convenient for my use. Also on this Mac, 720p content only filled ¼ of the screen. This is on a Retina screen, which I suspect may be confusing something. I created a custom playback profile and finally landed on the 'opengl-rgba' renderer that managed to display 720 and 1080 content fullscreen.
I have a zip file containing mythfrontend.app, built from 'fixes/30' a few weeks ago. I'd like to share it with the community. What's the best way to do that? Do I need to request access to the sourceforge project?
If anyone would like to try their own build, the steps I took are below. I used kalak_lanar's steps as a starting point. My build system was a fresh install of 10.11 El Capitan in a VM with MacPorts, Xcode, and the Command Line Tools installed.
Getting the source
I can't post links, so fill in the normal github url.
Code: Select all
git clone github/MythTV/mythtv.git
cd mythtv
git clone github/MythTV/packaging.git
Getting dependencies from MacPorts
I had to get an older version of QT5 because my build system is 10.11.
Code: Select all
sudo port install qt511 qt511-qtwebkit qt511-qtscript qt511-mysql-plugin
sudo port install yasm libsamplerate taglib libbluray exiv2 lame x264 x265 openssl
Providing some missing headers
Code: Select all
cd mythtv
ln -s /opt/local/include/samplerate.h libs/libmyth/audio/samplerate.h
mkdir -p libs/libmythmetadata/libbluray/
ln -s /opt/local/include/libbluray/*.h libs/libmythmetadata/libbluray/
mkdir -p libs/libmythmetadata/exiv2/
ln -s /opt/local/include/exiv2/*.h* libs/libmythmetadata/exiv2/
mkdir -p libs/libmyth/openssl/
ln -s /opt/local/include/openssl/*.h libs/libmyth/openssl/
Configure and build
Code: Select all
./configure --enable-mac-bundle --qmake=/opt/local/libexec/qt5/bin/qmake --disable-backend --runprefix=../Resources --disable-lirc --disable-distcc
make
Packaging
At this point, you'll have a ~6MB bundle located at programs/mythfrontend/mythfrontend.app that should run just fine on the build system. However, to use it elsewhere, we need to copy in
many dependencies. There are some tools that can do most of this for us.
The makebundle command should end with '.sh', but again, I can't post 'links'.
Code: Select all
/opt/local/libexec/qt5/bin/macdeployqt mythfrontend.app
../../../packaging/OSX/build/makebundle mythfrontend.app
cp mythfrontend.icns mythfrontend.app/Contents/Resources/application.icns
The bundle should be ~260MB now. My last step was to modify/update mythfrontend.app/Contents/Info.plist. I used the one in my MythFrontend 29 bunlde as a reference.