Bug 405564 - Upon doubleclicking the application icon for Kdenlive I receive the error 'Cannot find the melt program required for rendering (part of MLT)' suddenly out of the blue. I open terminal and type 'whereis mlt' and it directs me to the path /usr/share/mlt/
Summary: Upon doubleclicking the application icon for Kdenlive I receive the error 'Ca...
Status: RESOLVED FIXED
Alias: None
Product: kdenlive
Classification: Applications
Component: User Interface (show other bugs)
Version: 18.12.2
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Jean-Baptiste Mardelle
URL:
Keywords:
: 379828 386991 405622 405953 (view as bug list)
Depends on:
Blocks:
 
Reported: 2019-03-17 13:39 UTC by FM
Modified: 2021-03-05 13:34 UTC (History)
6 users (show)

See Also:
Latest Commit:
Version Fixed In:
fritzibaby: timeline_corruption+


Attachments
attachment-29565-0.html (2.05 KB, text/html)
2019-03-17 17:59 UTC, FM
Details
attachment-22670-0.html (1.19 KB, text/html)
2019-03-18 12:20 UTC, FM
Details
attachment-27916-0.html (996 bytes, text/html)
2019-03-18 15:20 UTC, FM
Details
attachment-18965-0.html (1.06 KB, text/html)
2019-03-19 10:19 UTC, FM
Details

Note You need to log in before you can comment on or make changes to this bug.
Description FM 2019-03-17 13:39:05 UTC
SUMMARY
Upon doubleclicking the application icon for Kdenlive I receive the error 'Cannot find the melt program required for rendering (part of MLT)' suddenly out of the blue. I open terminal and type 'whereis mlt' and it directs me to the path /usr/share/mlt. I select the 'kdenlive' folder that was modified yesterday Mar 16 2019 and the program opened. I cannot yet tell if this affects the functionality of the program but everytime I open the program, this small box opens asking me to find the melt program. As if navigating the path was not saved. What am I missing? 

FYI In the about Kdenlive section, the MLT version is specified as 6.12.0

STEPS TO REPRODUCE
1. Double click on Kdenlive application icon
2. Select the folder path to the MLT file in /usr/share/mlt/kdenlive
3. Press okay.
4. Close program
5. Double click on Kdenlive application icon
6. Error message repeats

OBSERVED RESULT

Recursively asks for the path file.

EXPECTED RESULT

I expect the program to accept the path to the mlt file and store it going forward

SOFTWARE/OS VERSIONS
Windows: 
MacOS: 
Linux/KDE Plasma: Linux 4.20.15-200.fc29.x86_64
(available in About System)
KDE Plasma Version: 5.55.0-1.fc29
KDE Frameworks Version: 5.55.0
Qt Version: 5.11.3

ADDITIONAL INFORMATION
Comment 1 Christoph Feck 2019-03-17 14:50:57 UTC
Try 'which melt' instead of 'whereis mlt'. The actual melt binary might be in a separate package.
Comment 2 Christoph Feck 2019-03-17 14:52:18 UTC
And yes, you need the 'melt' binary whenever you want to render/export a video.
Comment 3 FM 2019-03-17 17:59:22 UTC
Created attachment 118865 [details]
attachment-29565-0.html

Thank you that might be the problem. I tried 'which melt' and received

/usr/bin/which: no melt in
(/home/foveann/.local/bin:/home/foveann/bin:/home/foveann/.local/bin:/home/foveann/bin:/usr/share/Modules/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin)

So I tried 'dnf install mlt' as root and received

Package mlt-6.12.0-5.fc29.x86_64 is already installed.
Package mlt-6.12.0-7.fc29.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

So mlt is clearly installed but is there a special path to the 'melt'
binary that I am not aware of? Sorry I'm new to this and require a bit more
hand holding.

Thanks for all your time and help!



On Sun, Mar 17, 2019 at 10:52 AM Christoph Feck <bugzilla_noreply@kde.org>
wrote:

> https://bugs.kde.org/show_bug.cgi?id=405564
>
> Christoph Feck <cfeck@kde.org> changed:
>
>            What    |Removed                     |Added
>
> ----------------------------------------------------------------------------
>                  CC|                            |rdieter@gmail.com
>
> --- Comment #2 from Christoph Feck <cfeck@kde.org> ---
> And yes, you need the 'melt' binary whenever you want to render/export a
> video.
>
> --
> You are receiving this mail because:
> You reported the bug.
Comment 4 Christoph Feck 2019-03-18 02:02:12 UTC
Did you try to install 'melt' in addition to 'mlt'? As I said, the binary could be in a separate package.
Comment 5 FM 2019-03-18 12:20:19 UTC
Created attachment 118878 [details]
attachment-22670-0.html

Yeah I was thinking of that. I tried 'dnf install melt' and received:

No match for argument: melt
Error: Unable to find a match

So I tried 'dnf update' and 'dnf upgrade' and tried it again and again
received the same 'no match argument' error.




On Sun, Mar 17, 2019 at 10:02 PM Christoph Feck <bugzilla_noreply@kde.org>
wrote:

> https://bugs.kde.org/show_bug.cgi?id=405564
>
> --- Comment #4 from Christoph Feck <cfeck@kde.org> ---
> Did you try to install 'melt' in addition to 'mlt'? As I said, the binary
> could
> be in a separate package.
>
> --
> You are receiving this mail because:
> You reported the bug.
Comment 6 Rex Dieter 2019-03-18 12:55:27 UTC
It's provided as /use/bin/mlt-melt on fedora to avoid conflicts with another application of the same name, fyi
Comment 7 FM 2019-03-18 15:20:32 UTC
Created attachment 118886 [details]
attachment-27916-0.html

I selected that path (/usr/bin/mlt-melt) and it seemed to have accepted it.
But upon closing and opening the program again, the box prompt returned.
Same problem.

On Mon, Mar 18, 2019 at 8:55 AM Rex Dieter <bugzilla_noreply@kde.org> wrote:

> https://bugs.kde.org/show_bug.cgi?id=405564
>
> --- Comment #6 from Rex Dieter <rdieter@gmail.com> ---
> It's provided as /use/bin/mlt-melt on fedora to avoid conflicts with
> another
> application of the same name, fyi
>
> --
> You are receiving this mail because:
> You reported the bug.
Comment 8 Rex Dieter 2019-03-19 03:15:15 UTC
What's the contents of your ~/.config/kdenliverc [env] group?  Mine is:

[env]
defaultimageapp=/usr/bin/gimp
defaultprojectfolder[$e]=$HOME/Documents
ffmpegpath[$e]=/usr/bin/ffmpeg
ffplaypath[$e]=/usr/bin/ffplay
ffprobepath[$e]=/usr/bin/ffprobe
mltpath[$e]=/usr/share/mlt/profiles/
rendererpath[$e]=/usr/bin/mlt-melt

The important part is the value of rendererpath in this context.
Comment 9 Rex Dieter 2019-03-19 03:18:18 UTC
OK, that was testing with kdenlive 18.04, after upgrading to 18.12.2, I can reproduce the failure here.  No matter what value is in kdenliverc for rendererpath, the next launch complains it cannot be found.
Comment 10 Rex Dieter 2019-03-19 03:28:20 UTC
Upon examining the code, it does appear to assume that binary is called "melt".  Once upon a time, fedora patched the code to look for mlt-melt too, but that got dropped along the way (not sure why), but it appears that part may still be needed.

I'll work restoring that, and hope it's something that is upstreamable.
Comment 11 FM 2019-03-19 10:19:20 UTC
Created attachment 118906 [details]
attachment-18965-0.html

Thank you!

On Mon, Mar 18, 2019 at 11:28 PM Rex Dieter <bugzilla_noreply@kde.org>
wrote:

> https://bugs.kde.org/show_bug.cgi?id=405564
>
> --- Comment #10 from Rex Dieter <rdieter@gmail.com> ---
> Upon examining the code, it does appear to assume that binary is called
> "melt".
>  Once upon a time, fedora patched the code to look for mlt-melt too, but
> that
> got dropped along the way (not sure why), but it appears that part may
> still be
> needed.
>
> I'll work restoring that, and hope it's something that is upstreamable.
>
> --
> You are receiving this mail because:
> You reported the bug.
Comment 12 Christoph Feck 2019-03-19 11:53:09 UTC
*** Bug 405622 has been marked as a duplicate of this bug. ***
Comment 13 Rex Dieter 2019-03-28 21:10:01 UTC
*** Bug 386991 has been marked as a duplicate of this bug. ***
Comment 14 Rex Dieter 2019-03-28 21:10:19 UTC
*** Bug 405953 has been marked as a duplicate of this bug. ***
Comment 15 Rex Dieter 2019-03-28 21:17:34 UTC
FYI, the code in question is in mltconnection.cpp where it hard-codes looking for "mlt" only:

    QString meltPath;
    if (qEnvironmentVariableIsSet("MLT_PREFIX"))
        meltPath = qgetenv("MLT_PREFIX") + QStringLiteral("/bin/melt") + exeSuffix;
    if (!QFile::exists(meltPath)) {
        meltPath = QDir::cleanPath(profilePath + QStringLiteral("/../../../bin/melt")) + exeSuffix;
    }
    if (!QFile::exists(meltPath)) {
        meltPath = QStandardPaths::findExecutable("melt");
    }
    KdenliveSettings::setRendererpath(meltPath);
Comment 16 Rex Dieter 2019-03-28 21:27:54 UTC
Should be fixed by commit,
https://cgit.kde.org/kdenlive.git/commit/?id=40ed4ba30ecc34a96a38a7fe768c0dc4e54e8500

I'm verifying now
Comment 17 Christoph Feck 2019-03-28 21:37:34 UTC
If there is indeed another binary with the name 'melt', and OSS community thinks this name isn't related to the MLT framework, then maybe the code could check 'mlt-melt' first, then 'melt'. Otherwise, it could still call the wrong binary if both are installed.
Comment 18 Rex Dieter 2019-03-28 21:39:22 UTC
Good point, indeed mlt-melt should be searched first to avoid that scenario
Comment 19 emohr 2019-03-31 10:16:13 UTC
Is this bug related to the same issue: https://bugs.kde.org/show_bug.cgi?id=379828
Comment 20 Rex Dieter 2019-03-31 14:05:03 UTC
Similar issue, yes
Comment 21 emohr 2019-03-31 14:20:28 UTC
*** Bug 379828 has been marked as a duplicate of this bug. ***
Comment 22 Rex Dieter 2019-03-31 14:39:18 UTC
Note I said similar, but not the same, not sure if it's best to treat it as a duplicate.

Background on fedora, the both binaries freeze and melt come from a package called "freeze", code from
http://www.ibiblio.org/pub/Linux/utils/compress/freeze-2.5.0.tar.gz
which predates mlt and kdenlive.  This is why mlt's binary is renamed and name-spaced on fedora to be mlt-melt to not conflict.

I'm not sure what kdenlive expects when it tries run a binary named 'freeze', but for sure, 'freeze -p' is not supported by this one.
Comment 23 James A. Jaworski 2019-05-05 23:30:08 UTC
Upgraded from Fedora 26 to 27. Still had a problem. Went back to this page and saw the comment about changing the Melt Path setting to /usr/bin/mlt-melt... and IT WORKS!

I successfully Rendered and viewed a video I made last year to .mp4.

I wish I had known what to do 2 yrs. ago. Geez.

Anyways, thanks to the developers here who helped fix this problem.
Comment 24 farid 2021-03-05 13:34:05 UTC
Hi folks, closing this as it seems to be a distro packaging issue. Also these days I'd recommend using Flatpaks or Appimages. Cheers.