The "real-time" property is documented here:https://www.mltframework.org/bin/view/MLT/ConsumerAvformat#real_time
Syntax:melt edl.xml -consumer avformat:out.mp4 realtime=-4
The real time property is really two properties in one. Positive and negative specifies whether frames should be dropped or not (respectively).
The reason one might drop frames would be in real-time applications where it is more valuable to keep displaying pictures than to actually display every picture. If you are watching a video, for example, it might be less distracting to drop every 5th frame than to have the video constantly pausing.
For file based processing and any non-real-time applications, you want to use a negative number so that frames are not dropped.
Tip: using more than one processing thread may expose a bug in a filter. If you see strange behavior, try setting real-time to 0 and see if the problem goes away.
The "threads" property is documented here:https://www.mltframework.org/bin/view/MLT/ConsumerAvformat#threads
Syntax:melt edl.xml -consumer avformat:out.mp4 threads=4
This will tell the encoder how many threads to use for encoding.
The two properties can be combined:melt edl.xml -consumer avformat:out.mp4 realtime=-4 threads=4
I typically set the values to be equal to the number of logical cores available. So "-4" and "4" respectively would be a good way to maximize your machine.
~BM
From: jeffrey k eliasen <***@jke.net>
To: Dan Dennedy <***@dennedy.org>
Cc: mlt-***@lists.sourceforge.net
Sent: Thursday, June 16, 2016 6:40 PM
Subject: Re: [Mlt-devel] Optimizing `melt` in a CPU-intensive environment
OK, so if I'm reading this properly, I should do something like:
melt edl.xml -consumer avformat:out.mp4 real_time:4
... to get specify 4 cores with frame-dropping?
Also, what is frame dropping?
#yiv3598955513 .yiv3598955513ExternalClass * {line-height:100%;}
----------
jeffrey k eliasen - technologist, philosopher, agent of change
blog |linkedin |google+ |facebook |twitter
On Jun 16, 2016, at 13:30, Dan Dennedy <***@dennedy.org> wrote:
https://www.mltframework.org/bin/view/MLT/Questions#Does_MLT_take_advantage_of_multi
On Thu, Jun 16, 2016 at 4:29 PM jeffrey k eliasen <***@jke.net> wrote:
I am running the melt command on a 4-core system with no other software running (except system services), and I am only seeing about 30% CPU usage (134% of the theoretical 400% on the box). ffmpeg and other commands are fully utilizing the cores (380-410%), so the power is definitely available. All the files are being read from tempfs (RAM-based disk), so while there is definitely some latency for file access it should not be significant compared to the same media stored on physical media.
Is melt able to utilize multiple processors? If so, why is it only using about 1.5 CPUs of the available 4? Are there settings I can adjust to better utilize the host machine?
----------
jeffrey k eliasen - technologist, philosopher, agent of change
blog |linkedin |google+ |facebook |twitter
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine_______________________________________________
Mlt-devel mailing list
Mlt-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlt-devel