Re: [Mlt-devel] Best video format(s) for realtime melt?
On Fri, Dec 7, 2018 at 11:55 AM Tom Murphy wrote: > Ah, and another criterion I forgot but could be important is the > ability to quickly seek / jump around in a melt video. > > Some people in the Shotcut forum working on proxy and intermediate file workflows seem mostly impressed with the Ut Video codec, but that is lossless compressed. Also, currently, to use it one must be sure to supply colorspace and color_range flags to ffmpeg command line to ensure proper output. Unfortunately, that is quite a large file, which is not great for long intermediate files. DNxHD is still good and is smaller, but it has limited support for resolutions and frame rates. If you need something that compresses similar (i.e. visually lossless) to DNxHD, is fast, and flexible; consider to use ProRes. I have not done a deep study of the three prores encoder implementations in ffmpeg, but I have tended to favor prores_ks. https://trac.ffmpeg.org/wiki/Encode/VFX#Prores > Tom > > On 12/7/18, Tom Murphy wrote: > > The "Films By Kris" tutorials recommend using ffmpeg with "-vcodec > > dnxhd" to convert video before handing it off to melt, because DNxHD > > is apparently good for realtime processing with MLT and melt. > > > > Is it (still) the case that DNxHD is the "best" for use with melt in > > realtime mode (i.e. not writing to file)? > > > > Although this is admittedly a fuzzy question, I'd imagine criteria for > > "best" being something like: > > - fast to decode (if not also encode) > > - parallelizable (it looks like AVCHD can't be decoded multithreaded, > > e.g.) > > - good on other axes I'm not thinking of, maybe particular to MLT? > > > > Thanks, and apologies for any misapprehensions! > > Tom > > > > > ___ > Mlt-devel mailing list > Mlt-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/mlt-devel > ___ Mlt-devel mailing list Mlt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mlt-devel
Re: [Mlt-devel] Best video format(s) for realtime melt?
Ah, and another criterion I forgot but could be important is the ability to quickly seek / jump around in a melt video. Tom On 12/7/18, Tom Murphy wrote: > The "Films By Kris" tutorials recommend using ffmpeg with "-vcodec > dnxhd" to convert video before handing it off to melt, because DNxHD > is apparently good for realtime processing with MLT and melt. > > Is it (still) the case that DNxHD is the "best" for use with melt in > realtime mode (i.e. not writing to file)? > > Although this is admittedly a fuzzy question, I'd imagine criteria for > "best" being something like: > - fast to decode (if not also encode) > - parallelizable (it looks like AVCHD can't be decoded multithreaded, > e.g.) > - good on other axes I'm not thinking of, maybe particular to MLT? > > Thanks, and apologies for any misapprehensions! > Tom > ___ Mlt-devel mailing list Mlt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mlt-devel
[Mlt-devel] Best video format(s) for realtime melt?
The "Films By Kris" tutorials recommend using ffmpeg with "-vcodec dnxhd" to convert video before handing it off to melt, because DNxHD is apparently good for realtime processing with MLT and melt. Is it (still) the case that DNxHD is the "best" for use with melt in realtime mode (i.e. not writing to file)? Although this is admittedly a fuzzy question, I'd imagine criteria for "best" being something like: - fast to decode (if not also encode) - parallelizable (it looks like AVCHD can't be decoded multithreaded, e.g.) - good on other axes I'm not thinking of, maybe particular to MLT? Thanks, and apologies for any misapprehensions! Tom ___ Mlt-devel mailing list Mlt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mlt-devel
Re: [Mlt-devel] melt: add support for consumer in/out
On Fri, Dec 7, 2018 at 11:27 AM jb wrote: > Hi, > > In shotcut, the tag is used in the playlist's xml to pass > consumer > arguments, allowing to render a playlist file with melt whitout passing > extra > arguments. > > I am considering using the same approach for Kdenlive, but there is one > small > missing feature for us: > > it would be useful to allow rendering only part of the playlist using this > method. My idea was to allow in/out attributes on the consumer that would > then > be passed on the producer to allow rendering only a part of the project. > > A simple patch to melt, like mine below, implements the feature. > > Would you be ok to include such feature ? > > Yes, go ahead and commit it directly. > Thanks > Jean-Baptiste > > --- > diff --git a/src/melt/melt.c b/src/melt/melt.c > index ab3a0ab4..300f9c88 100644 > --- a/src/melt/melt.c > +++ b/src/melt/melt.c > @@ -972,11 +972,18 @@ query_all: > > // Get the last group > mlt_properties group = mlt_properties_get_data( > melt_props, > "group", 0 ); > - > + > // Apply group settings > mlt_properties properties = > MLT_CONSUMER_PROPERTIES( consumer > ); > mlt_properties_inherit( properties, group ); > - > + int in = mlt_properties_get_int( properties, "in" > ); > + int out = mlt_properties_get_int( properties, > "out" ); > + if ( in > 0 || out > 0 ) { > + if ( out == 0 ) { > + out = mlt_producer_get_length( > melt ) - 1; > + } > + mlt_producer_set_in_and_out(melt, in, out); > + } > // Connect consumer to melt > mlt_consumer_connect( consumer, > MLT_PRODUCER_SERVICE( melt ) > ); > > > > > ___ > Mlt-devel mailing list > Mlt-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/mlt-devel > ___ Mlt-devel mailing list Mlt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mlt-devel
[Mlt-devel] melt: add support for consumer in/out
Hi, In shotcut, the tag is used in the playlist's xml to pass consumer arguments, allowing to render a playlist file with melt whitout passing extra arguments. I am considering using the same approach for Kdenlive, but there is one small missing feature for us: it would be useful to allow rendering only part of the playlist using this method. My idea was to allow in/out attributes on the consumer that would then be passed on the producer to allow rendering only a part of the project. A simple patch to melt, like mine below, implements the feature. Would you be ok to include such feature ? Thanks Jean-Baptiste --- diff --git a/src/melt/melt.c b/src/melt/melt.c index ab3a0ab4..300f9c88 100644 --- a/src/melt/melt.c +++ b/src/melt/melt.c @@ -972,11 +972,18 @@ query_all: // Get the last group mlt_properties group = mlt_properties_get_data( melt_props, "group", 0 ); - + // Apply group settings mlt_properties properties = MLT_CONSUMER_PROPERTIES( consumer ); mlt_properties_inherit( properties, group ); - + int in = mlt_properties_get_int( properties, "in" ); + int out = mlt_properties_get_int( properties, "out" ); + if ( in > 0 || out > 0 ) { + if ( out == 0 ) { + out = mlt_producer_get_length( melt ) - 1; + } + mlt_producer_set_in_and_out(melt, in, out); + } // Connect consumer to melt mlt_consumer_connect( consumer, MLT_PRODUCER_SERVICE( melt ) ); ___ Mlt-devel mailing list Mlt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mlt-devel