On Tue, Jan 20, 2015 at 8:05 PM, Dog Film <dogf...@gmail.com> wrote:

> Hi, all,
>
> currently I am hitting a wall with ffmpeg and I would like to dive a
> little bit into mlt, especially the python binding is an interesting
> area for me to explore. However, it is a bit hard to find good
> examples, so I would like to ask for pointers - are there good
> tutorials, collections of scripts and examples, or some more docs?

Yes, I found the website, looks like the documentation is more kind of

a reference and I am not at that level right know, I need some


There are no hidden docs. Everything worthwhile that we know about is
listed on the web site already. However, there are few contributors to this
project, and all of them have other projects that use MLT that is their
main project. Please understand that MLT is mainly for developers, and the
user-facing tools are primarily these other projects listed on the web
site. With that said, a savvy power user or light developer can do a lot
but will need to spend a lot of time to figure things out. Sometimes, like
you, they drop by here or a web discussion forum, and it would be nice if
they hung out together and shared knowledge, but I get the impression most
of them do not use MLT regularly enough.


> starters. I am reading it, but I am having a hard time finding
> examples for my usecase.
>

Let me repeat from Documentation > XML Authoring Examples on the web site:
See also demo/mlt_* in the source tree. These are command line examples.
Add "-consumer xml" to convert any of these into a XML example.

See also src/swig/python/*.py


>
> Please allow me to ask some naive questions:
>
> * when using the melt tool, will this use ffmpeg (as library or
> however) to encode videos? I am asking this because I would like to
> know if I can expect the same results regarding encoding speed and
> quality.
>

yes


>
> * is there a possiblity to use an editor like kdenlive (or anything
> else, like e.g. openshot) to prepare a (simple) xml file and to use
> this for an automated workflow with python? So I could prepare some
> tracks manually and then use the saved session as a template for batch
> processing lots of videos?
>

Absolutely, and I highly recommend that. Make a template from your XML and
use the Python binding to do template processing and only basic MLT
producer-consumer setup. Keep in mind that serialized XML from melt or a
video editor is going to be much more verbose than necessary, and sometimes
minimal XML is easier to work with in a template manner especially when
adjusting the timing of things.


>
> I am looking for a better way to automate my existing workflow of
> editing videos. Currently I use a small set of bash scripts and a bit
> of python to assemble pictures, gradients, text and movies with
> imagemagick and ffmpeg. This is not very complicated, mostly putting
> some overlays on existing video footage, but things could be easier,
> trying to do too much with the ffmpeg command line tool makes things
> complicated - it is a brilliant tool and encoder, but I am constantly
> expanding the feature set of my little encoding pipeline and would
> like to do  everything in a more reusable and extendable way,
> preferably with python, so I can easier connect to some data
> extraction and visualization tools, which are perfectly available in
> python land. It would be a dream to have all the features of a full
> blown editor available in python, it looks like this must be possible
> with mlt, but I can not find a way into it.
>
> May I ask for an example of how to create a video with image overlays,
> but the images should have a fade in and out? Please imagine a video
> of a speaker showing some slides - I am converting the slides via
> unoconvert + imagemagick and then using the overlay filter with
> ffmpeg, but this gets really ugly if I would like to have fade-in and
> fade-out on the slide overlays, and adding some more things like a
> logo, text, moving elements, data vizualisations makes this a really
> uncomfortable ffmpeg monster command line assembly fight... how could
> this be achieved with the mlt framework, either by using melt or
> python bindings?
>

Mock it up in any MLT GUI editor all either save MLT XML or export it. At
the very least, by reading the XML, you can see what plugins are being used
and their parameters and the general structure of things. There is more
than one way to do most things. Then, you can try to apply those findings
to your hand-authored XML or Python or melt command lines. All of these
options share the same concepts using the same object classes and
properties value syntax.


>
> A completely different issue is about live mixing. I would love to see
> an example of how to mix two live video inputs (firewire or any other
> device) - will this work with python or will it be too slow? I have a
> little bit of experience with QT, so this might be an alternative, but
> I need to see some examples to get some understanding of how this
> could be done. I imagine a simple application that shows video inputs
> and allows some basic manipulation like color correction, overlays,
> sound adjustment and of course mixing everything together and saving
> it in good quality. No full blown VJ console, just some basic live mix
> tool - does such a thing exist (built with mlt, of course, yes, it
> exists for other platforms than linux, I know, but I would like to
> have it scriptable...
>

There are no good examples of this, but it is possible. If you do not use
MLT's transitions to make a multi-viewer, and you want to use your own
layout code in your app, then I think the python binding is a dead end
unless you are willing to extend it for your needs. Basically, the Python
binding does not provide good support for mlt_event listeners that have
extra parameters, especially the ones that are C pointers.


>
> well, that might be enough for a little appetizer... :)
>
> Thank you very much for your attention,
> have a nice day,
> John
>


-- 
+-DRD-+
------------------------------------------------------------------------------
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.
http://p.sf.net/sfu/gigenet
_______________________________________________
Mlt-devel mailing list
Mlt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlt-devel

Reply via email to