Author Topic: MLV App 1.14 - All in one MLV Video Post Processing App [Windows, Mac and Linux]  (Read 1034877 times)

escho

  • Contributor
  • Hero Member
  • *****
  • Posts: 563
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #400 on: September 25, 2017, 07:32:23 PM »
This:
Code: [Select]
win32: TARGET = "MLVApp"
linux-g++*: TARGET = "mlvapp"
osx: TARGET = "MLV App"
did the trick.

Is it necessary to have three different targets for the three OS? Why not one Target MLVApp for all?
https://sternenkarten.com/
600D, 6D, openSUSE Tumbleweed

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #401 on: September 25, 2017, 07:34:43 PM »
@revast
show me how.
Good question ;) (I hoped you know how to do it without me)

Well... In the best case you have to compile all QT libs as static and link all s**t together including zlib, libpng16 and pthread. I'm doing this with Mingw64 (under linux) to compile static windows binary. But I never did that with GCC. That is why we never released binary for Linux version of the MLV App.

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #402 on: September 25, 2017, 07:40:35 PM »
@escho
Is it necessary to have three different targets for the three OS? Why not one Target MLVApp for all?
Yeah... right.

Quite funny but, I changed win32 TARGET because I had a linking problem, changed linux TARGET because I'm tired of typing upper-lower case binary name :P and leaved unchanged macx TARGET with respect to Author.

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #403 on: September 25, 2017, 07:50:17 PM »
Hey @masc I have an issue with QT designer. To the focus pixel combo box I added additional 3rd item, but this item, strangely, never shows up in compiled version despite the fact that the related part of MainWindow.ui looks like this:
Code: [Select]
<widget class="QComboBox" name="comboBoxFocusPixelSwitch">
               <property name="maximumSize">
                <size>
                 <width>90</width>
                 <height>16777215</height>
                </size>
               </property>
               <property name="font">
                <font>
                 <pointsize>10</pointsize>
                </font>
               </property>
               <item>
                <property name="text">
                 <string>Off</string>
                </property>
               </item>
               <item>
                <property name="text">
                 <string>On</string>
                </property>
               </item>
               <item>
                <property name="text">
                 <string>Croprec</string>
                </property>
               </item>
              </widget>
Can you enlighten me what am I doing wrong?

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #404 on: September 25, 2017, 09:52:12 PM »
@bouncyball: whooaaa... sry, I never work with the ui code. I just paint the GUI in the QtCreator-Designer-Plugin and I am happy when it does what I want. So you want a third switch: Off, On, CropRec? Where is the difference between On and CropRec? CropRec is =2 in your lib and works with the same functions? I can do it for you...

Edit: Done.
5D3.113 | EOSM.202

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #405 on: September 26, 2017, 09:12:42 AM »
@masc:

I did it exactly from designer plugin. Now I pulled your changes and the item is not showing again hahaha :). Some black magic I guess. Then I deleted all and cloned the fresh repository. Compiled and Croprec is there ;). Well I guess when I'm doing qmake from Mingw64 it creates a lot of files in addition to Makefile and maybe somewhere it caches the ui.

Anyway thank you for helping! I'm gonna push my changes as soon as they are stable :)

revast

  • New to the forum
  • *
  • Posts: 24
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #406 on: September 26, 2017, 12:46:39 PM »
I have now made an AppImage.
Just download, make executeable, launch.

Turned out to be quite easy, thanks to linuxdeployqt
Code: [Select]
./linuxdeployqt  m/MLVApp -appimage -bundle-non-qt-libs -verbose=2where in folder m is the a MLVApp.png, a static FFMpeg executeable, the MLVApp executeable,  as well as a MLVApp.desktop file with 

Code: [Select]
[Desktop Entry]
Type=Application
Name=MLVApp
Exec=MLVApp
Icon=MLVApp

To see how it looks like inside, use: ./MLVApp-x86_64.AppImage --appimage-extract

What it actually does is to grab all libs which are needed to run the executeable, and deploys that in a compressed package which is built like an ISO file - you can even mount it - which is also executeable via fuse.
The wiki has more info, the one thing that has to be considered for a release package is that the older the platform where the appimage was made, the better in terms of compatibility to different linux distributions.

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #407 on: September 26, 2017, 01:01:41 PM »
@revast

Very cool it's like make portable application under win. Runs fast!
Just one note: it's almost 2 times bigger (~43mb) then it would be as statically linked binary (~24mb).
But anyway I think in this form it could be released as Linux version.

Thank you for your time :)

revast

  • New to the forum
  • *
  • Posts: 24
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #408 on: September 26, 2017, 02:47:03 PM »
Quote
Just one note: it's almost 2 times bigger (~43mb) then it would be as statically linked binary (~24mb).
Thats because its bundled with ffmpeg static binary, which is about 14mb with upx compression applied, without it, the AppImage would have around 30mb.

Quote
But anyway I think in this form it could be released as Linux version.

Yeah, I think so, too :). Using an older base system (like ubuntu 12.04, depends on the minimum qt5 version I guess) to compile MLVApp and make the AppImage would be better though.

I now uploaded another version which should respect the theming of the Linux Distribution the AppImage is run on

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #409 on: September 26, 2017, 06:58:36 PM »
I have now made an AppImage.
Just download, make executeable, launch.

Turned out to be quite easy, thanks to linuxdeployqt
Very cool! That is exactly the same way I go on OSX, here it's called macdeployqt. Can you please build this this version? Then I could add it to the latest release page.

In the latest commit I added some lines to the .pro, now you can (manually) switch between ubuntu and opensuse.

5D3.113 | EOSM.202

revast

  • New to the forum
  • *
  • Posts: 24
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #410 on: September 26, 2017, 08:31:49 PM »

Code: [Select]
Can you please build this this version? Then I could add it to the latest release pageok, done :). But bear in mind: the older the libc version is the more compatible the package. The appimage creator uses centos 6 for example...

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #411 on: September 26, 2017, 10:36:18 PM »
Yes, that's the same on OSX. I always build it on 10.9.5.
The link is the same as above? I'll load it on github. Thank you!
5D3.113 | EOSM.202

ilia3101

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 980
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #412 on: September 26, 2017, 11:46:54 PM »
Tried out Linux build, on a Qt-virgin Ubuntu system, got this error:



Does all of Qt need to be installed? Or could it be packaged with the downlad?

revast

  • New to the forum
  • *
  • Posts: 24
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #413 on: September 27, 2017, 12:39:22 AM »
hmmm all dependencies should be bundled in the one file, yes.
Sorry, I haven't tried it out on vanilla ubuntu till now. I am downloading a xubuntu 17.10 daily image and try for myself

all I can say right now is that that library definitely is inside the .AppImage, I checked that.

try this version

if that does not help, 
Code: [Select]
sudo apt-get install libqt5multimedia5 for now..

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #414 on: September 27, 2017, 07:10:36 AM »
If linuxdeploayqt does the same as macdeployqt I think I know what you did and how you could solve that. If you do that it won't work:
compile, linuxdeployqt, compile, (linuxdeployqt, ) upload
because the compiling breaks the dependencies.

If you do:
delete binary/package, compile, linuxdeployqt, upload
there should be no problem.

This was the problem I had in the very beginning here.
5D3.113 | EOSM.202

revast

  • New to the forum
  • *
  • Posts: 24
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #415 on: September 27, 2017, 07:40:31 AM »
I figured it out, looks like linuxdeployqt did not set the paths right,
there is a line:
Code: [Select]
prefix=./in qt.conf, which should point to the prefix dir (usr..) of the appimage. But that does not work, even if my lib folder is in APPimageDIR/usr/

Nevertheless, that is easily fixed with a little script which replaces the default AppRun symlink :

Code: [Select]
#! /bin/bash
export APPDIR="$(dirname "$(readlink -f "$0")")"  #get the path inside the appimage
export LD_LIBRARY_PATH=lib:LD_LIBRARY_PATH #set libray path
export QT_PLUGIN_PATH=plugins:QT_PLUGIN_PATH #setting this explicitly as well, just for safety
export QT_QPA_PLATFORMTHEME="fusion"  #set theme path (does not work so far)

cd $APPDIR
./MLVApp -style=fusion
   

As you can see, the fix I had in mind regarding the theme issues did not work out so well so far.
I explicitly set the style to the built-in fusion style for now, via the -style=fusion argument and will figure out the theme details later.

At least the appimage works now..

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #416 on: September 27, 2017, 12:04:18 PM »
Maybe you don't need the theme fix in the latest revision. Yesterday I added a theme switch. Now you can select a darksytle - this one has Fusion as base. I'll exchange the package this afternoon.

Edit: Done.
5D3.113 | EOSM.202

escho

  • Contributor
  • Hero Member
  • *****
  • Posts: 563
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #417 on: September 27, 2017, 07:09:01 PM »
i like the darkstyle, but the playback buttons are a bit difficult to recognize.
https://sternenkarten.com/
600D, 6D, openSUSE Tumbleweed

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #418 on: September 27, 2017, 07:21:05 PM »
i like the darkstyle, but the playback buttons are a bit difficult to recognize.
+1 :)

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #419 on: September 27, 2017, 07:27:21 PM »
Hey guys!

Some changes to the raw correction part:

Now focus pixel maps not needed in the working directory any more. MLV App will generate maps according to MLV metadata on the fly, including crop_rec mode MLVs (EOSM, 100D, 700D, 650D). If .fpm map intentionally placed to the working directory it will be used instead of internal generator (overriding possibility).

Fix focus dots combo box now has 3rd option, CropRec, which turns on the map generator for raw videos recorded with crop_rec module.

regards
bb

DeafEyeJedi

  • Hero Member
  • *****
  • Posts: 3411
  • 5D3 | M1 | 7D | 70D | SL1 | M2 | 50D
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #420 on: September 27, 2017, 08:00:50 PM »
I'm literally lost in this puddle of mud. For good reasons though. Am I still to be testing with the latest 0.8 version or is there later revision?  :P

Anyway here's what I came across when using SL1 RAW footage (that has Focus Pixels) which was shot in crop_rec and noticed few strange things in case you guys haven't already?

When selecting Fix Focus Dots option to ON while having Chroma Smoothing off then shows the focus pixels. But with FFD ON while having CS_2x2 ON then cleans up nicely except for the border lines if you look closely.

However, even more strange was the fact when I deselect the FFD to OFF while having just CS_2x2 ON still keeps the image clean from showing Focus Pixels? Will test more thoroughly on this with varieties of files later.




I remember this very similar matter when testing out Focus Pixels back in the day w @dfort & @Danne. Fond memories!   :D

Some changes to the raw correction part:

Now focus pixel maps not needed in the working directory any more. MLV App will generate maps according to MLV metadata on the fly, including crop_rec mode MLVs (EOSM, 100D, 700D, 650D). If .fpm map intentionally placed to the working directory it will be used instead of internal generator (overriding possibility).

Fix focus dots combo box now has 3rd option, CropRec, which turns on the map generator for raw videos recorded with crop_rec module.

This is really nice actually. Keep on rockin' BB McFly!
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #421 on: September 27, 2017, 08:39:44 PM »
@DeafEyeJedi: The focus pixel maps were missing in the v0.8 OSX, and there was still a little bug. So that does not work correctly there for OSX... There are newer working revisions on the repos (->with focus pixels working), but not as release yet.

i like the darkstyle, but the playback buttons are a bit difficult to recognize.
Yes, that is correct. So I created some new ones today. They are on github now. Hope you like them.
5D3.113 | EOSM.202

escho

  • Contributor
  • Hero Member
  • *****
  • Posts: 563
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #422 on: September 27, 2017, 08:47:05 PM »
I created some new ones today. They are on github now. Hope you like them.
Look nice  :)
https://sternenkarten.com/
600D, 6D, openSUSE Tumbleweed

bouncyball

  • Contributor
  • Hero Member
  • *****
  • Posts: 849
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #423 on: September 27, 2017, 09:17:56 PM »
@DeafEyeJedi: yeah @masc is right. There where no focus maps supplied in this release. That is why cs2x2 gets rid of the most dots except border ones :). It will not be case in the later updated version because map will be generated on the fly.

@masc: loved new look and buttons! :D

Edit: loop button is a bit vague.

masc

  • Contributor
  • Hero Member
  • *****
  • Posts: 2003
Re: Making a New MLV Processing App! [Windows, Mac and Linux]
« Reply #424 on: September 27, 2017, 09:40:27 PM »
Edit: loop button is a bit vague.
Yepp. New try.
5D3.113 | EOSM.202