]> git.sesse.net Git - mlt/blob - NEWS
add ability to ignore field order as used by sdl consumer
[mlt] / NEWS
1 MLT Release Notes
2 -----------------
3
4 Version 0.8.2 - August 28, 2012
5
6 This is a bugfix and minor enhancement release.
7
8 * Overhaul of A/V sync with libavformat-based inputs.
9 * Fix a major memory leak introduced in previous release.
10 * Fixes to problems revealed by Coverity Scan static analysis.
11 * Improved encoding presets.
12 * melt can now be built without SDL with define MELT_NOSDL, which is handy
13   for running it as a child process on Windows and OS X.
14 * melt can now be signaled to quit, which also makes it more useful as a
15   child process.
16
17 Special thanks to Mikko Rapeli who provided many of the Coverity fixes.
18
19
20 Version 0.8.0 - June 1, 2012
21
22 The minor version is increased due to the addition of time properties!
23 The soname version increased in the process because some mlt_property
24 functions changed; however, very few if any apps actually directly use
25 mlt_property preferring to use mlt_properties instead. In addition:
26
27 * improve seek speed on AVCHD when using FFmpeg v0.9.1+ (NOT Libav!)
28 * composite and dissolve speed improvements on x86-64
29 * improve performance of caching in image producers
30 * add device enumeration to decklink producer and consumer
31
32 Special thanks go to contributors Maksym Veremeyenko and Ed Rogalsky.
33
34
35 Version 0.7.8 - February 13, 2012
36
37 This is a bugfix and minor enhancement release.
38
39 * Improved support for v53 of libavcodec/libavformat
40 * Added "multi" consumer - multiple, simultanous outputs
41 * Added framerate adaption to "consumer" producer and "multi" consumer
42 * Can now use YADIF deinterlacer with decklink producer
43 * Added "rtaudio" consumer for native audio support on multiple platforms
44 * Added ability to request image format closest to source (mlt_image_none)
45 * Added more audio formats
46 * Added vqm (video quality measurement) transition
47
48
49 Version 0.7.6 - October 31, 2011
50
51 This is a bugfix and minor enhancement release.
52
53  * Improved support for v53 of libavcodec/libavformat (0.7 and 0.8 releases)
54  * Major DeckLink consumer improvements
55  * Much more metadata
56  * Added audio-only JACK consumer
57  * Added video stabilization filters
58  * Added dual pass audio normalization to sox filter
59  * Added VITC and VANC capture to DeckLink producer
60  * Added support for writing timecode tracks
61  * Added MLT, frei0r, and SoX version to xml serialization
62  * Added D-10, XDCAM, DNxHD, and Sony-PSP encoding presets
63  * Can now use rotoscoping for masking filters
64  * Added dynamictext filter makes burned-in timecode and similar easier
65  * Added support for consumer element in MLT XML
66  * Added outlining, padding, and alignment to pango filter
67
68 Special thanks go to contributors Maksym Veremeyenko, Brian Matherly, and
69 Marco Gittler.
70
71
72 Version 0.7.4 - July 16, 2011
73
74 This is a bugfix and minor enhancement release.
75
76 Framework
77  * Important: change consumer property profile to mlt_profile.
78  * Improve frame-dropping and drop_max property to mlt_consumer.
79  * Added support for presets for any service through special property named
80    "properties"
81  * Added mlt_profile_from_producer() for auto-profile.
82  * Added mlt_properties_set_lcnumeric() and mlt_properties_get_lcnumeric().
83  * Added LC_NUMERIC to YAML Tiny metadata schema and parser.
84
85 Modules
86  * Added support for more than 2 channels of greater than 16-bit audio.
87  * Added discrete filters for each SoX effect.
88  * Added discrete filters for each LADSPA audio plugin.
89  * Added automatic service metadata for SoX and LADSPA plugins.
90  * Added at least basic metadata for nearly every service.
91  * Added support for decklink on Windows (tested) and Mac OS X (untested).
92  * Added support for JACK transport synchronization.
93  * Added blacklist.txt to jackrack plugin (contains dssi-vst).
94  * Rewrite of decklink consumer.
95  * Added support for live network, multi-stream device, and pipe/fifo sources
96    in avformat producer.
97  * Added LC_NUMERIC attribute to root XML element.
98
99 Melt
100  * Added '-query presets' option.
101  * Added -jack option for transport synchronization.
102  * Send -help and -query output to stdout to make it convenient for pagers.
103
104 Other
105  * Added mlt.Frame.get_image() for Python.
106  * Removed configure option --avformat-svn.
107  * Fixes for locales that use comma for decimal point.
108  * Added presets for DVD, DV, x264, and WebM encoding.
109
110 Since FFmpeg forked and there were a few releases, there is no recommended
111 version at this time. With that said, there were changes to accomodate the
112 API changes with some moderate testing of the 0.6, 0.7, and 0.8 series
113 releases of both FFmpeg and Libav.
114
115
116 Version 0.7.2 - May 1, 2011
117
118 This is a minor release to fix a few things between the 0.7.0 release
119 and the release of Kdenlive 0.8. I recommend Kdenlive v0.8 users to
120 upgrade to this version of Mlt. Beyond that there are some exciting
121 additions to the Blackmagic Design DeckLink plugin!
122
123 Framework
124  * Added mlt_profile_list().
125
126 Modules
127  * Added decklink producer (i.e. capture, live encoding).
128  * Added keyer output for decklink consumer.
129  * Added AVOptions to the avformat service metadata.
130  * Added support for new major API versions (53) of FFmpeg.
131
132 Melt
133  * Added '-query profile' option.
134  * Added '-query formats', '-query audio_codecs' and '-query video_codecs'.
135
136 The recommended version of FFmpeg for use with this release is 0.6.1.
137
138
139 Version 0.7.0 - March 27, 2011
140
141 This is a major new release due to signficant additions to API, framework,
142 and build.
143
144 Build
145  * Added support for Windows via MinGW.
146  * Enabled linsys module by default.
147  * Disabled VDPAU by default and added --avformat-vdpau to enable it.
148  * Added support for swfdec 0.7.
149
150 Framework:
151  * Added parallelism to mlt_consumer when 'real_time' > 1 or < -1.
152  * Added mlt_deque_insert() and mlt_deque_peek().
153  * Added mlt_profile parameter to mlt_producer_new().
154  * Let transitions with no out point run forever.
155  * Added mlt_frame_unique_properties().
156  * Added mlt_frame_set_image() and mlt_frame_set_alpha().
157  * Added mlt_image_format_size() and mlt_audio_format_size().
158  * Added mlt_filter_get_length() and mlt_transition_get_length().
159  * Added mlt_filter_get_progress(), mlt_transition_get_progress(),
160    and mlt_transition_get_progress_delta().
161  * Added mlt_filter_get_position() and mlt_transition_get_position().
162  * Added mlt_properties_lock() and mlt_properties_unlock().
163
164 Modules
165  * Added rotoscoping filter.
166  * Improve libavdevice support (V4L2, ALSA, libdc1394).
167  * Added support for new FFmpeg metadata API.
168  * Various fixes, refactoring, and improvements.
169
170 The recommended version of FFmpeg for use with this release is 0.6.1.
171
172
173 Version 0.6.2 - January 23, 2011
174
175 This is just a minor release to address a few things prior to introducing
176 major changes from other branches.
177
178  * Added force_aspect_ratio property to pixbuf and qimage producers.
179  * Added opacity handling in geometry property of the affine filter and
180    transition.
181  * Added use_normalised property to affine filter.
182  * Added always_active property to affine transition.
183  * Fix building on NetBSD.
184
185 The recommended version of FFmpeg for use with this release is 0.6.1.
186
187
188 Version 0.6.0 - January 1, 2011
189
190 The recommended version of FFmpeg for use with this release is 0.6.1.
191 There were quite a few enhancements and changes including a minor interface
192 change. Therefore, this release gets a jump in the versioning.
193
194 Framework
195  * mlt_profile
196    - Added (Y'CbCr) colorspace attribute.
197    - Added mlt_profile_clone().
198  * Added mlt_consumer_position() and Mlt::Consumer::position().
199  * Added Mlt::Properties::wait_for(string).
200  * Added a version API: mlt_version_get_int() and others.
201  * Added Mlt::Producer::pause().
202  * Added mlt_frame_write_ppm() for debugging.
203
204 Melt
205  * Added automatic detection of profile from first input when profile
206    not specified.
207  * Now exits with error result when consumer fails fatally.
208
209 Modules
210  * Added swfdec producer for Flash files including variables support.
211    (Does not support audio.)
212  * Added consumer for Blackmagic Design DeckLink SDI and Intensity HDMI.
213  * Added Y'CbCr colorspace conversion and option to use full luma range.
214  * Added (de)serialization of profile to XML.
215  * Added support for #frame# variable to the data_show filter.
216  * Added support for frei0r string parameters.
217  * Make FFmpeg formats and codecs available as properties (not just stderr).
218  * Try to load .xml file as MLT XML.
219  * Added a consumer-sdl-paused event to sdl_preview.
220  * Added a consumer-fatal-error event to avformat.
221  * Change composite transition to default to progressive rendering; field-
222    based rendering available only explicitly.
223
224
225 Version 0.5.10 - September 13, 2010
226
227 This is a quick followup to the 0.5.8 release to address an issue I want to
228 address immediately. I noticed an extra unconditional colorspace conversion
229 to and from RGB was added for all YCbCr (YUV) video sources. In addition, I
230 have enabled the avcolor_space filter on OS X since it works now.
231
232
233 Version 0.5.8 - September 12, 2010
234
235 The recommended version of FFmpeg for use with this release is 0.6.
236 This is a maintenance release to address some bugs that appeared
237 thus far in the 0.5.x series. Beyond that is a few enhancements:
238
239 * Added EXIF-based auto-rotation of images to pixbuf and qimage producers.
240 * Improved quality of libswscale-based image conversion and scaling.
241 * Added channelswap and panner audio filters; panner also does balance.
242 * Improve audio waveform and add audiowave video filter.
243 * Enhanced luma filter to work with animated filters such as affine.
244 * Automatically crop 8 bottom lines of 1088 source in a 16:9 project
245   (common in Canon EOS digital cameras).
246 * Added support for inline images in kdenlivetitler.
247
248
249 Version 0.5.6 - June 20, 2010
250
251 The recommended version of FFmpeg for use with this release is 0.6.
252 This is a maintenance release to address some bugs that appeared
253 this far in the 0.5.x series. Beyond that it a few enhancements:
254
255 * Added interpolation to the affine transition and filter.
256 * Added multi-track audio encoding to avformat consumer.
257 * Added interlaced field rendering to kdenlivetitle producer.
258
259
260 Version 0.5.4 - April 19, 2010
261
262 The recommended version of FFmpeg for use with this release is SVN r21322.
263 This is another maintenance release to address some bugs that appeared
264 this far in the 0.5.x series. Beyond that it adds two things that only
265 very specific users will see:
266
267 * Added C# (ECMA CLR) binding (not enabled by default).
268 * Linsys SDI consumer now configures itself from MLT profile.
269
270
271 Version 0.5.2 - March 10, 2010
272
273 The recommended version of FFmpeg for use with this release is SVN r21322.
274 This is a minor maintenance release, but it is interesting because it now
275 enables usage of libswscale as the default choice for image scaling,
276 image format conversion, and color space conversion. That gives better
277 quality and performance. In addition, there are some improvements in the
278 sdl_preview consumer to make it suitable for use in OpenShot 1.1. Other
279 things:
280
281 * Fixed mlt++/MltFilteredProducer
282 * Fixed playing to the end in Kdenlive (mantis bug 1207)
283 * Fixed crash load uncompressed video
284 * Fixed compiling yadif for non-sse2 builds
285
286
287 Version 0.5.0 - February 15, 2010
288
289 The recommended version of FFmpeg for use with this release is SVN r21322.
290 This is an enhancement release, confined mainly to the modules rather than
291 the framework. In particular, this adds support for VDPAU, YADIF, and HD-SDI
292 technologies!
293
294 configure: added --disable-sse2
295
296 framework:
297 * mlt_cache: added mlt_cache_set_size()
298 * mlt_filter: added data property "service" - set when attached
299 * mlt_frame:
300   - added Doxygen docs
301   - added "previous frame" and "next frame" data properties - available
302     when its producer has _need_previous_next=1
303 * mlt_playlist: added support for negative out point same as length-1
304 * mlt_service:
305   - added mlt_service_cache_purge()
306   - added "_need_previous_next" handling in mlt_service_get_frame()
307   - added firing event "service-changed" in mlt_service_attach()
308
309 modules:
310 * avformat producer:
311   - added decoding H.264 with NVIDIA VDPAU
312     Requires FFmpeg built with vdpau.
313     This is automatically detected and enabled. You can disable this by
314         setting environment variable MLT_NO_VDPAU=1 or property novdpau=1.
315   - added caching of FFmpeg contexts and decoded images
316     This allows large numbers of clips in a project avoiding limitations
317         with number of threads and file descriptors permitted per process.
318     You can disable image caching with property noimagecache=1.
319   - added variant of producer named avformat-novalidate
320   - restored support for video4linux(2)
321 * avformat consumer: added apre, fpre, and vpre preset properties
322 * crop filter: added center_bias integer property
323 * deinterlace filter: added the excellent YADIF as a method
324 * kdenlivetitle producer: added text outlining
325 * linsys/sdi consumer:
326   - added support for HD-SDI
327   - changed name from "linsys_sdi" to just "sdi"
328 * oldfilm filter: added "uneven development" effect
329 * xml producer: add support for unspecified out points
330
331 profiles:
332 * added several missing ATSC (HD) profiles
333 * change descriptions from using Hz to fps
334
335
336 Version 0.4.10 - December 8, 2009
337
338 The recommended version of FFmpeg for use with this release is SVN r19873.
339 This is "hotfix" for the 0.4.8 release that fixes a couple of regression
340 bugs introduced just before the release.
341
342
343 Version 0.4.8 - December 7, 2009
344
345 The recommended version of FFmpeg for use with this release is SVN r19873.
346 This is mainly a maintenance release. Besides bug fixes here are other
347 notable changes.
348
349 modules:
350 * avformat producer:
351   - refactored producer to use much less properties
352   - added support for audio_index=all for linsys_sdi consumer
353   - added force_fps property (does yet not adjust duration)
354 * core/crop: added "center" property to crop filter
355 * linsys_sdi:
356   - added support for >2 audio channels
357   - added property meta.map.audio.<N>.channels=<integer>
358   - added property meta.map.audio.<N>.start=<integer>
359 * qimage/kdenlivetitle: add typewriter effect
360
361
362 Version 0.4.6 - October 7, 2009
363
364 The recommended version of FFmpeg for use with this release is SVN r19873.
365 This release is an enhancement release along with numerous build, A/V synch,
366 concurrency, and other bug fixes.
367
368 configure:  new option --avformat-svn-version
369
370 modules:
371 * avformat: much improved seeking on H.264/MPEG2-TS (AVCHD) (Ivan Schreter)
372 * core: new imageconvert and audioconvert filters (framework refactorization)
373 * linsys: new SDI consumer (Broadcast Centre Europe)
374 * qimage: new kdenlivetitle producer (J.B. Mardelle and Marco Gittler)
375 * sdl: new audio_only consumer for OS X
376
377 mlt++ and swig: update bindings
378
379 framework:
380 * refactored image format conversion
381   mlt_frame.h:
382   - added convert_image() virtual function
383   - added mlt_image_format_name()
384   - removed many mlt_convert_ and scaling/padding functions
385 * refactored audio format conversion
386   mlt_frame.h:
387   - mlt_get_audio() virtual function parameters changed
388   - added convert_audio() virtual function
389   - mlt_frame_get_audio() parameters changed
390   - added mlt_frame_set_audio()
391   - added mlt_audio_format_name()
392   mlt_types.h:
393   - deprecated mlt_audio_pcm
394   - added mlt_audio_s16
395   - added mlt_audio_s32
396   - added mlt_audio_float
397
398
399 Version 0.4.4 - June 30, 2009
400
401 The recommended version of FFmpeg for use with this release is 0.5.0.
402 This release is a minor maintenance update to the 0.4.2 - just build and
403 bug fixes.
404
405 * new configure script options:
406   --swig-languages
407   --rename-melt
408   --mandir
409   --datadir
410 * added man page for melt (not installed)
411 * added invert property to composite transition
412 * added frei0r plugin blacklist, currently only contains facedetect
413 * added Lua binding via SWIG
414
415
416 Version 0.4.2 - May 30, 2009
417
418 The recommended version of FFmpeg for use with this release is 0.5.0.
419 This release is a minor maintenance update to the 0.4.0 - just build and
420 bug fixes.
421
422
423 Version 0.4.0 - May 17, 2009
424
425 The recommended version of FFmpeg for use with this release is 0.5.0.
426
427 This release is primarily a reorganization of the mlt and mlt++ projects.
428 In brief:
429 * "inigo" was renamed "melt"
430 * "westley" is no longer the XML file extension and root element - they are
431   simply "mlt" now
432 * mlt++ is included with mlt and no longer a separate project
433 * miracle, valerie, and humperdink were moved to a new, separate project
434 For details: http://www.mltframework.org/twiki/bin/view/MLT/ExtremeMakeover
435
436 avformat producer improvements:
437 * improve audio synchronization
438 * improve reliability of video playback with FFmpeg newer than v0.5.0
439 * improve seeking performance of DNxHD and HuffYUV
440
441
442 Version 0.3.8 - April 15, 2009
443
444 The recommended version of FFmpeg for use with this release is SVN r17923.
445
446 This almost entirely a bugfix release to coincide with the Kdenlive 0.7.3
447 release. See the ChangeLog (SVN log) for details.
448
449 framework:
450 * added mlt_cache API
451 * improved doxygen documentation comments
452 * added some 15 fps profiles
453 * improved color property handling (support web-style '#' color value)
454 * add const qualifier to many string parameters
455
456 modules:
457 * core: improved brightness filter
458 * core: added image crop filter
459 * frei0r: added support for producer/source plugins
460 * frei0r: added support for color parameters
461 * sdl: added window_background color property
462
463
464 Version 0.3.6 - February 2, 2009
465
466 The recommended version of FFmpeg for use with this release is SVN r16849.
467
468 This almost entirely a bugfix release to coincide with the Kdenlive 0.7.2
469 release. See the ChangeLog (SVN log) for details.
470
471 framework:
472 * added mlt_log logging API
473 * improved doxygen documentation comments
474
475 avformat module:
476 * consumer: report list of muxers when f=list and codecs when acodec=list or
477   vcodec=list
478 * consumer: added support for an=1 or acodec=none and vn=1 or vcodec=none
479 * producer: list available demuxers and decoders when constructor arg is like
480   f-list[[,]acodec-list][[,]vcodec-list]
481
482
483 Version 0.3.4 - December 29, 2008
484
485 The recommended version of FFmpeg for use with this release is SVN r16313.
486
487 This almost entirely a bugfix release. See the ChangeLog (SVN log) for details.
488 There are a few notes:
489
490 framework:
491 * improved doxygen documentation comments (work in progress)
492   published docs are at http://mltframework.org/doxygen/
493
494 avformat module:
495 * added support for AVOption parsing to producer
496 * added filter_swscale as alternative rescaler
497 * added recommended FFmpeg revision to configure option --help
498 * use recommended FFmpeg revision with --avformat-svn on release versions
499 * added configure option --avformat-no-codecs
500 * added configure option --avformat-no-filters
501
502 misc:
503 * new profile atsc_1080i_50
504 * added --disable-sse option to configure script
505 * improved build for OS X and x86-64 and improved handling of mmx/sse
506
507
508 Version 0.3.2 - November 10, 2008
509
510 In addition to bug fixes detailed in the ChangeLog, here is a list of
511 enhancements.
512
513 framework:
514 * deprecated mlt-config; use pkg-config instead
515 * added more HD profiles
516
517 modules:
518 * sdl: added fullscreen property
519 * sox: sox v14.1.0 compatibility
520 * gtk: added force_reload property to producer_pixbuf
521 * frei0r: added support for YAML Tiny metadata
522 * frei0r: added keyframe support on double and boolean parameters
523 * oldfilm: added keyframe support for filter_vignette
524 * kdenlive: added filter_freeze
525
526 inigo:
527 * added -version, -silent, and -progress options
528 * improved output of usage information
529 * removed realtime process scheduling
530
531
532 Version 0.3.0 - August 5, 2008
533
534 framework:
535 * fix bugs with introduction of mlt_profile in v0.2.4
536 * added versioning to libs
537 * remove module registry and add dynamic module loading:
538   added mlt_repository_register, mlt_repository_consumers,
539   mlt_repository_filters, mlt_repository_producers, mlt_repository_transitions
540 * new module metadata system based on YAML Tiny:
541   added mlt_repository_register_metadata, mlt_repository_metadata,
542   mlt_repository_languages, mlt_properties_is_sequence,
543   mlt_properties_parse_yaml, mlt_properties_serialise_yaml, and
544   added metaschema.yaml Kwalify schema file
545 * mlt_consumer: added threaded, non-lossy processing when real_time=-1
546 * added autoclose property to mlt_playlist for sequential processing
547   of very large playlists (prevents resource exhaustion)
548 * mlt_factory_init now returns the global mlt_repository
549 * change mlt_repository_fetch to mlt_repository_create
550 * change mlt_factory_prefix to mlt_factory_directory
551 * added mlt_field_disconnect_service
552
553 modules:
554 * move all modules from $datadir to $libdir
555 * new oldfilm module by Marco Gittler
556 * new frei0r module by Marco Gittler
557 * new dgraft module by Dan Dennedy for inverse telecine (not ready yet)
558 * avformat: added support for multi-threaded encoding and decoding
559 * consumer_avformat: added support for AVOption to support all ffmpeg options
560   using ffmpeg-style property names
561 * consumer_avformat: added support for dual pass encoding
562 * qimage: added support for Qt4
563 * sox: added support for sox v14.0.0
564 * transition_composite: added animatable geometry-type "pan" property to crop
565   and pan instead of automatic down-scale
566
567 inigo:
568 * added -query option to lookup module metadata
569 * added -profile option and support for progress=1 for kdenlive
570
571
572 Version 0.2.4 - August 4, 2007
573
574 * framework: new extensible profiles system to replace MLT_NORMALISATION
575 * module avformat: interlaced coding support for ffmpeg/libavcodec
576 * module avformat: build improvements for --avformat-svn
577 * new effectv module with BurningTV video filter
578 * module qimage: added support for psd, xcf and exr images
579 * numerous bugfixes
580
581
582 Version 0.2.3 - April 9, 2007
583
584 * Addition of kdenlive module
585 * Support for ffmpeg from subversion
586 * Support for ffmpeg libswscale
587 * Copyright and license cleanup
588
589
590 Version 0.2.2 - May 27, 2006
591
592 * Prepared specifically for the kdenlive 0.3 release.
593 * Contains some patches to support rgb24a output for the gdk-pixbuf and qimage
594   producers as well as some minor bugfixes.
595
596
597 Version 0.2.1 - December 5, 2005
598
599 * Many improvements since initial releases due to development of Shotcut and
600   Jahshaka editing interfaces.
601
602
603 Version 0.1.1 - June 9, 2004
604
605 * Minor modifications and bug fixes from the previous release. Better
606   ffmpeg/avformat integration and more reliable playback.
607
608
609 Version 0.1.0 - May 6, 2004
610
611 * First official release