+2012-08-28 Dan Dennedy <dan@dennedy.org>
+
+ * ChangeLog, presets/consumer/avformat/MPEG-4 ASP,
+ presets/consumer/avformat/MPEG-4-ASP, presets/consumer/avformat/webm: add
+ acodec to webm preset and rename MPEG-4 ASP preset
+
+ * Doxyfile, configure, docs/melt.1, src/framework/mlt_version.h: set version
+ to 0.8.2
+
+ * src/modules/avformat/configure: change recommended versions of ffmpeg/libav
+
+ * NEWS: add release notes for v0.8.2
+
+2012-08-26 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/stills/BMP, presets/consumer/avformat/stills/DPX,
+ presets/consumer/avformat/stills/JPEG, presets/consumer/avformat/stills/PNG,
+ presets/consumer/avformat/stills/PPM, presets/consumer/avformat/stills/TGA,
+ presets/consumer/avformat/stills/TIFF: add meta.preset.extension to image
+ sequence presets
+
+ * presets/consumer/avformat/AAC, presets/consumer/avformat/Flash,
+ presets/consumer/avformat/MJPEG, presets/consumer/avformat/MP3,
+ presets/consumer/avformat/MPEG-2, presets/consumer/avformat/MPEG-4,
+ presets/consumer/avformat/MPEG-4 ASP, presets/consumer/avformat/Sony-PSP,
+ presets/consumer/avformat/Vorbis, presets/consumer/avformat/WAV,
+ presets/consumer/avformat/XDCAM-HD422,
+ presets/consumer/avformat/atsc_1080i_50/DNxHD,
+ presets/consumer/avformat/atsc_1080i_5994/DNxHD,
+ presets/consumer/avformat/atsc_1080p_2398/DNxHD,
+ presets/consumer/avformat/atsc_1080p_24/DNxHD,
+ presets/consumer/avformat/atsc_1080p_25/DNxHD,
+ presets/consumer/avformat/atsc_1080p_2997/DNxHD,
+ presets/consumer/avformat/atsc_1080p_30/DNxHD,
+ presets/consumer/avformat/atsc_1080p_50/DNxHD,
+ presets/consumer/avformat/atsc_1080p_5994/DNxHD,
+ presets/consumer/avformat/atsc_1080p_60/DNxHD,
+ presets/consumer/avformat/atsc_720p_2398/DNxHD,
+ presets/consumer/avformat/atsc_720p_50/DNxHD,
+ presets/consumer/avformat/atsc_720p_5994/DNxHD,
+ presets/consumer/avformat/atsc_720p_60/DNxHD,
+ presets/consumer/avformat/dv_ntsc/D10, presets/consumer/avformat/dv_ntsc/DVD,
+ presets/consumer/avformat/dv_ntsc_wide/D10,
+ presets/consumer/avformat/dv_ntsc_wide/DVD,
+ presets/consumer/avformat/dv_pal/D10, presets/consumer/avformat/dv_pal/DVD,
+ presets/consumer/avformat/dv_pal_wide/D10,
+ presets/consumer/avformat/dv_pal_wide/DVD,
+ presets/consumer/avformat/hdv_1080_25p/HDV,
+ presets/consumer/avformat/hdv_1080_30p/HDV,
+ presets/consumer/avformat/hdv_1080_50i/HDV,
+ presets/consumer/avformat/hdv_1080_60i/HDV,
+ presets/consumer/avformat/hdv_720_25p/HDV,
+ presets/consumer/avformat/hdv_720_30p/HDV,
+ presets/consumer/avformat/hdv_720_50p/HDV,
+ presets/consumer/avformat/hdv_720_60p/HDV,
+ presets/consumer/avformat/lossless/FFV1,
+ presets/consumer/avformat/lossless/H.264,
+ presets/consumer/avformat/lossless/HuffYUV,
+ presets/consumer/avformat/lossless/MJPEG,
+ presets/consumer/avformat/lossless/MPEG-2,
+ presets/consumer/avformat/lossless/MPEG-4,
+ presets/consumer/avformat/lossless/ProRes, presets/consumer/avformat/webm,
+ presets/consumer/avformat/x264-medium,
+ presets/consumer/avformat/x264-medium-baseline,
+ presets/consumer/avformat/x264-medium-main,
+ presets/consumer/avformat/x264-medium-pass1: add preset metadata such as
+ alternate name, filename extension, note.
+
+ * presets/consumer/avformat/Sony-PSP, presets/consumer/avformat/webm,
+ presets/consumer/avformat/x264-medium-baseline,
+ presets/consumer/avformat/x264-medium-main: change profile to vprofile in
+ presets
+
+ * presets/consumer/avformat/Vorbis,
+ presets/consumer/avformat/lossless/ProRes: add vorbis and prores encode
+ presets
+
+2012-08-25 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/AAC, presets/consumer/avformat/Flash,
+ presets/consumer/avformat/MJPEG, presets/consumer/avformat/MP3,
+ presets/consumer/avformat/MPEG-2, presets/consumer/avformat/MPEG-4,
+ presets/consumer/avformat/MPEG-4 ASP, presets/consumer/avformat/WAV,
+ presets/consumer/avformat/hdv_1080_25p/HDV,
+ presets/consumer/avformat/hdv_1080_30p/HDV,
+ presets/consumer/avformat/hdv_1080_50i/HDV,
+ presets/consumer/avformat/hdv_1080_60i/HDV,
+ presets/consumer/avformat/hdv_720_25p/HDV,
+ presets/consumer/avformat/hdv_720_30p/HDV,
+ presets/consumer/avformat/hdv_720_50p/HDV,
+ presets/consumer/avformat/hdv_720_60p/HDV,
+ presets/consumer/avformat/lossless/FFV1,
+ presets/consumer/avformat/lossless/H.264,
+ presets/consumer/avformat/lossless/HuffYUV,
+ presets/consumer/avformat/lossless/MJPEG,
+ presets/consumer/avformat/lossless/MPEG-2,
+ presets/consumer/avformat/lossless/MPEG-4,
+ presets/consumer/avformat/stills/BMP, presets/consumer/avformat/stills/DPX,
+ presets/consumer/avformat/stills/JPEG, presets/consumer/avformat/stills/PNG,
+ presets/consumer/avformat/stills/PPM, presets/consumer/avformat/stills/TGA,
+ presets/consumer/avformat/stills/TIFF,
+ presets/consumer/avformat/x264-medium-pass1: add a bunch of new encoding
+ presets
+
+ * src/modules/avformat/producer_avformat.c: fix seeking on some formats (HDV)
+ after a/v sync improvements
+
+2012-08-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c,
+ src/modules/avformat/producer_avformat.yml: the recent A/V sync overhaul
+ needed some additional work
+
+2012-08-20 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/avformat/producer_avformat.c: Update
+ src/modules/avformat/producer_avformat.c Better way to detect the
+ availability of PIX_FMT_YUVA444P.
+
+2012-08-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: fix build on ffmpeg v0.5 (no
+ CODEC_ID_VP8)
+
+ * src/modules/xml/consumer_xml.c: fix possible null pointer with strdup()
+
+ * src/melt/melt.c: let melt be stopped gracefully by signal
+
+2012-08-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: webm works better with use_pts=1
+ as well (3559115)
+
+ * src/modules/core/producer_consumer.c: fix null pointer check
+ (coverity-709396)
+
+ * src/modules/sdl/consumer_sdl_preview.c: fix possible null pointer
+ dereference (coverity-714581)
+
+2012-08-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: fix possible null pointer dereferences
+ (coverity-714581)
+
+ * src/modules/linsys/consumer_SDIstream.c: fix possible null pointer
+ dereference (coverity-714580)
+
+ * src/framework/mlt_properties.c: fix possible null pointer dereference
+ (coverity-710882)
+
+ * src/modules/xml/producer_xml.c: fix possible null pointer dereference
+ (coverity-710870)
+
+ * src/modules/kino/filehandler.cc: fix possible null pointer dereferences
+ (coverity-709399)
+
+ * src/modules/avformat/producer_avformat.c: fix possible null pointer
+ dereferences (coverity-709395)
+
+ * src/melt/melt.c: fix possible null pointer dereference (coverity-709394)
+
+ * src/framework/mlt_consumer.c: fix possible null pointer dereference
+ (coverity-709393)
+
+ * src/modules/videostab/filter_videostab2.c: fix memory leak if fail to
+ alloc/init filter (coverity-714584)
+
+ * src/modules/videostab/filter_videostab.c: fix memory leak if fail to
+ alloc/init filter (coverity-714583)
+
+ * src/modules/gtk2/producer_pango.c: fix resource leak on iconv
+ (coverity-714582)
+
+2012-08-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: fix A/V synch on more H.264 files
+ (without B-frames) reported by Jordan Keyes
+
+2012-08-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_properties.c: fix reading properties file without
+ trailing newline
+
+2012-08-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/melt/io.c, src/melt/melt.c: fix melt progress display on Windows
+
+ * src/melt/melt.c: fix -progress2 with pipe input
+
+ * src/melt/melt.c: fix melt progress indication on Windows with MELT_NOSDL
+
+2012-08-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/melt/Makefile: let melt be built without SDL on Windows with
+ -DMELT_NOSDL in CFLAGS
+
+2012-08-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/consumer_multi.c: relay first nested consumer's frame-show
+ event instead of own
+
+ * src/modules/core/consumer_multi.c: fix integrity of images with multi
+ consumer
+
+2012-08-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/filter_jackrack.c: fix seeking jack clients when
+ seeking while paused
+
+2012-08-01 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/videostab/filter_videostab2.c: videostab/filter_videostab2.c:
+ check for null Fixes Coverity CID 709405: Dereference before null check
+ (REVERSE_INULL) Directly dereferencing pointer "data". 244 data->stab
+ = calloc( 1, sizeof(StabData) ); 245 data->trans = calloc( 1, sizeof
+ (TransformData) ) ; Dereferencing "data" before a null check. 246 if (
+ data )
+
+ * src/modules/videostab/filter_videostab.c,
+ src/modules/videostab/filter_videostab2.c: videostab/filter_videostab*.c:
+ check return value from mlt_filter_new() Fixes Coverity CID 709365 and
+ 709366: Dereference null return value (NULL_RETURNS) Function
+ "mlt_filter_new" returns null (checked 50 out of 52 times). [show details]
+ Assigning: "parent" = null return value from "mlt_filter_new". 201
+ mlt_filter parent = mlt_filter_new(); Dereferencing a null pointer
+ "parent". 202 parent->child = self;
+
+ * src/modules/videostab/filter_videostab.c,
+ src/modules/videostab/filter_videostab2.c: videostab/filter_videostab*.c:
+ check for null Fixes Coverity CID 709404: Dereference before null check
+ (REVERSE_INULL) Dereferencing pointer "g". [show details] 85 if (
+ !mlt_geometry_parse( g, vectors, length, -1, -1 ) ) ... Dereferencing "g"
+ before a null check. 104 if ( g ) mlt_geometry_close( g );
+
+ * src/modules/sdl/consumer_sdl_still.c: sdl/consumer_sdl_still.c: use mutex
+ when changing sdl_screen Fixes Coverity CID 709357: Data race condition
+ (MISSING_LOCK) Accessing variable "this->sdl_screen"
+ (consumer_sdl_s.sdl_screen) requires the mlt_sdl_mutex lock. 230
+ this->sdl_screen = NULL; ... Locking "mlt_sdl_mutex". 445
+ pthread_mutex_lock( &mlt_sdl_mutex ); consumer_sdl_s.sdl_screen is being
+ accessed with lock "mlt_sdl_mutex" held. 446 this->sdl_screen
+ = SDL_SetVideoMode( this->window_width, this->window_height, 0,
+ this->sdl_flags ); 447 if ( consumer_get_dimensions(
+ &this->window_width, &this->window_height ) ) 448
+ this->sdl_screen = SDL_SetVideoMode( this->window_width, this->window_height,
+ 0, this->sdl_flags ); 449 450 uint32_t color =
+ mlt_properties_get_int( this->properties, "window_background" ); 451
+ if ( this->sdl_screen ) 452 { 453
+ SDL_FillRect( this->sdl_screen, NULL, color >> 8 ); 454
+ changed = 1; 455 } 456 pthread_mutex_unlock(
+ &mlt_sdl_mutex );
+
+ * src/modules/sdl/consumer_sdl_preview.c: sdl/consumer_sdl_preview.c: use
+ mutex when changing refresh_count Fixes Coverity CID 709360: Data race
+ condition (MISSING_LOCK) Locking "this->refresh_mutex". 133
+ pthread_mutex_lock( &this->refresh_mutex ); consumer_sdl_s.refresh_count is
+ being accessed with lock "this->refresh_mutex" held. 134
+ this->refresh_count = this->refresh_count <= 0 ? 1 : this->refresh_count + 1;
+ 135 pthread_cond_broadcast( &this->refresh_cond ); 136
+ pthread_mutex_unlock( &this->refresh_mutex ); ... Accessing variable
+ "this->refresh_count" (consumer_sdl_s.refresh_count) requires the
+ consumer_sdl_s.refresh_mutex lock. 295 this->refresh_count = 0; ...
+ Locking "this->refresh_mutex". 445
+ pthread_mutex_lock( &this->refresh_mutex ); 446
+ if ( this->running && speed == 0 && this->refresh_count <= 0 ) 447
+ { 448
+ mlt_events_fire( properties, "consumer-sdl-paused", NULL ); 449
+ pthread_cond_wait( &this->refresh_cond,
+ &this->refresh_mutex ); 450 }
+ consumer_sdl_s.refresh_count is being accessed with lock
+ "this->refresh_mutex" held. 451
+ this->refresh_count --; 452
+ pthread_mutex_unlock( &this->refresh_mutex );
+
+ * src/modules/sdl/consumer_sdl_preview.c: sdl/consumer_sdl_preview.c: check
+ for null pointer Fixes Coverity CID 709403: Dereference before null check
+ (REVERSE_INULL) Dereferencing pointer "this->play". [show details] 290
+ int eos_threshold = 20 + mlt_properties_get_int( MLT_CONSUMER_PROPERTIES(
+ this->play ), "buffer" ); ... Assigning: "this->active" = "this->play". 424
+ this->active = this->play; ...
+ Dereferencing "this->play" before a null check. 466 if ( this->play )
+ mlt_consumer_stop( this->play );
+
+ * src/modules/sdl/consumer_sdl_audio.c: sdl/consumer_sdl_audio.c: use mutex
+ when changing refresh_count Fixes Coverity CID 709359: Data race condition
+ (MISSING_LOCK) Locking "self->refresh_mutex". 145
+ pthread_mutex_lock( &self->refresh_mutex ); consumer_sdl_s.refresh_count is
+ being accessed with lock "self->refresh_mutex" held. 146
+ self->refresh_count = self->refresh_count <= 0 ? 1 : self->refresh_count + 1;
+ 147 pthread_cond_broadcast( &self->refresh_cond ); 148
+ pthread_mutex_unlock( &self->refresh_mutex ); ... Accessing variable
+ "self->refresh_count" (consumer_sdl_s.refresh_count) requires the
+ consumer_sdl_s.refresh_mutex lock. 478 self->refresh_count = 0; ...
+ Locking "self->refresh_mutex". 535
+ pthread_mutex_lock( &self->refresh_mutex ); 536
+ if ( refresh == 0 && self->refresh_count <= 0 ) 537
+ { 538 consumer_play_video( self,
+ frame ); 539 pthread_cond_wait(
+ &self->refresh_cond, &self->refresh_mutex ); 540
+ } 541 mlt_frame_close( frame );
+ consumer_sdl_s.refresh_count is being accessed with lock
+ "self->refresh_mutex" held. 542
+ self->refresh_count --; 543
+ pthread_mutex_unlock( &self->refresh_mutex );
+
+ * src/modules/sdl/consumer_sdl.c: sdl/consumer_sdl.c: use mutex when changing
+ sdl_screen Fixes Coverity CID 709357 and 709358: Data race condition
+ (MISSING_LOCK) Locking "mlt_sdl_mutex". 235
+ pthread_mutex_lock( &mlt_sdl_mutex ); consumer_sdl_s.sdl_screen is being
+ accessed with lock "mlt_sdl_mutex" held. 236
+ this->sdl_screen = SDL_GetVideoSurface( ); 237
+ pthread_mutex_unlock( &mlt_sdl_mutex ); ... Locking "mlt_sdl_mutex". 269
+ pthread_mutex_lock( &mlt_sdl_mutex );
+ consumer_sdl_s.sdl_screen is being accessed with lock "mlt_sdl_mutex" held.
+ 270 this->sdl_screen = SDL_SetVideoMode(
+ this->window_width, this->window_height, 0, this->sdl_flags ); 271
+ pthread_mutex_unlock( &mlt_sdl_mutex ); ... Accessing variable
+ "this->sdl_screen" (consumer_sdl_s.sdl_screen) requires the mlt_sdl_mutex
+ lock. 315 this->sdl_screen = NULL; ... Locking
+ "mlt_sdl_mutex". 573 pthread_mutex_lock(
+ &mlt_sdl_mutex ); consumer_sdl_s.sdl_screen is being accessed with lock
+ "mlt_sdl_mutex" held. 574 this->sdl_screen =
+ SDL_SetVideoMode( this->window_width, this->window_height, this->bpp,
+ this->sdl_flags ); 575 if ( consumer_get_dimensions(
+ &this->window_width, &this->window_height ) ) consumer_sdl_s.sdl_screen is
+ being accessed with lock "mlt_sdl_mutex" held. 576
+ this->sdl_screen = SDL_SetVideoMode( this->window_width,
+ this->window_height, this->bpp, this->sdl_flags ); 577
+ pthread_mutex_unlock( &mlt_sdl_mutex );
+
+ * src/modules/rtaudio/consumer_rtaudio.cpp: rtaudio/consumer_rtaudio.cpp: use
+ mutex when changing refresh_count Fixes Coverity CID 710859: Data race
+ condition (MISSING_LOCK) Accessing variable "this->refresh_count"
+ (RtAudioConsumer.refresh_count) requires the RtAudioConsumer.refresh_mutex
+ lock. 225 refresh_count = 0; ... Locking
+ "this->refresh_mutex". 282
+ pthread_mutex_lock( &refresh_mutex ); 283
+ if ( refresh == 0 && refresh_count <= 0 ) 284
+ { 285 play_video(
+ frame ); 286
+ pthread_cond_wait( &refresh_cond, &refresh_mutex ); 287
+ } 288
+ mlt_frame_close( frame ); RtAudioConsumer.refresh_count is being accessed
+ with lock "this->refresh_mutex" held. 289
+ refresh_count --; 290
+ pthread_mutex_unlock( &refresh_mutex ); ... Locking "rtaudio->refresh_mutex".
+ 561 pthread_mutex_lock( &rtaudio->refresh_mutex );
+ RtAudioConsumer.refresh_count is being accessed with lock
+ "rtaudio->refresh_mutex" held. 562 rtaudio->refresh_count =
+ rtaudio->refresh_count <= 0 ? 1 : rtaudio->refresh_count + 1; 563
+ pthread_cond_broadcast( &rtaudio->refresh_cond ); 564
+ pthread_mutex_unlock( &rtaudio->refresh_mutex );
+
+ * src/modules/rtaudio/consumer_rtaudio.cpp: rtaudio/consumer_rtaudio.cpp:
+ initialize variables Fixes Coverty CID 710879: Uninitialized pointer field
+ (UNINIT_CTOR) n-static class member ""queue"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "consumer.child" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member field "consumer.close" is not
+ initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "consumer.event_listener" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "consumer.is_stopped" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "consumer.local" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "consumer.put" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "consumer.queue" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member field "consumer.start" is not
+ initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "consumer.stop" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "consumer.threads" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field
+ "consumer.worker_threads" is not initialized in this constructor nor in any
+ functions that it calls.
+
+2012-07-31 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/rtaudio/RtAudio.h: rtaudio/RtAudio.h: initialize variables
+ Fixes Coverity CID 710878: Uninitialized scalar field (UNINIT_CTOR)
+ Non-static class member ""bufferSize"" is not initialized in this constructor
+ nor in any functions that it calls. Non-static class member ""channelOffset""
+ is not initialized in this constructor nor in any functions that it calls.
+ Non-static class member ""deviceFormat"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member
+ ""deviceInterleaved"" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member ""doByteSwap"" is not
+ initialized in this constructor nor in any functions that it calls.
+ Non-static class member ""doConvertBuffer"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member
+ ""latency"" is not initialized in this constructor nor in any functions that
+ it calls. Non-static class member ""mode"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member
+ ""nBuffers"" is not initialized in this constructor nor in any functions that
+ it calls. Non-static class member ""nDeviceChannels"" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ ""nUserChannels"" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member ""sampleRate"" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ ""state"" is not initialized in this constructor nor in any functions that it
+ calls. Non-static class member ""streamTime"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member
+ ""userBuffer"" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member ""userFormat"" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ ""userInterleaved"" is not initialized in this constructor nor in any
+ functions that it calls. 654 :apiHandle(0), deviceBuffer(0) { device[0]
+ = 11111; device[1] = 11111; }
+
+ * src/modules/rtaudio/RtAudio.h: rtaudio/RtAudio.h: initialize variable
+ Fixes Coverity CID 710877: Uninitialized scalar field (UNINIT_CTOR) Class
+ member declaration for ""thread"". 535 ThreadHandle thread; ... Non-static
+ class member ""thread"" is not initialized in this constructor nor in any
+ functions that it calls. 543 :object(0), callback(0), userData(0),
+ apiInfo(0), isRunning(false) {}
+
+ * src/modules/rtaudio/RtAudio.cpp: rtaudio/RtAudio.cpp: check for null
+ pointer Fixes Coverity CID 710858: Dereference after null check
+ (FORWARD_NULL) Comparing "this->rtapi_" to null implies that "this->rtapi_"
+ might be null. 146 if ( rtapi_ ) return; ... Passing null variable
+ "this->rtapi_" to function "RtApi::getDeviceCount()", which dereferences it.
+ (The dereference happens because this is a virtual function call.) 159 if
+ ( rtapi_->getDeviceCount() ) break;
+
+ * src/modules/qimage/producer_kdenlivetitle.c:
+ qimage/producer_kdenlivetitle.c: add error handling Fixes Coverity CID
+ 709363: Argument cannot be negative (NEGATIVE_RETURNS) Function "ftell(f)"
+ returns a negative number. Assigning: signed variable "lSize" = "ftell". 37
+ lSize = ftell (f); 38 rewind (f); 39 40
+ char *infile = (char*) mlt_pool_alloc(lSize); "lSize" is passed to a
+ parameter that cannot be negative. and compiler warning:
+ producer_kdenlivetitle.c: In function ‘read_xml’:
+ producer_kdenlivetitle.c:49:19: warning: ‘infile’ may be used
+ uninitialized in this function [-Wmaybe-uninitialized]
+
+ * src/modules/qimage/kdenlivetitle_wrapper.cpp:
+ qimage/kdenlivetitle_wrapper.cpp: check for division by zero Fixes Coverity
+ CID 709345: Division or modulo by zero (DIVIDE_BY_ZERO) Assigning: "anim_out"
+ = "mlt_properties_get_position(producer_props, "_animation_out")". On this
+ path, function call "mlt_properties_get_position(producer_props,
+ "_animation_out")" has return value of 0 465 mlt_position
+ anim_out = mlt_properties_get_position( producer_props, "_animation_out" );
+ ... Division by expression "anim_out" which may be zero has undefined
+ behavior 475 double percentage = position / anim_out;
+
+ * src/modules/plus/filter_affine.c: plus/filter_affine.c: check for null
+ pointer Fixes Coverity CID 709402: Dereference before null check
+ (REVERSE_INULL) Dereferencing pointer "transition". [show details] 64
+ mlt_properties_set_int( MLT_TRANSITION_PROPERTIES( transition
+ ), "b_alpha", 1 ); 65 } 66 Dereferencing "transition" before a
+ null check. 67 if ( producer != NULL && transition != NULL )
+
+ * src/modules/oldfilm/filter_dust.c: oldfilm/filter_dust.c: use correct
+ argument for sizeof() Fixes Coverity CID 709408: Wrong sizeof argument
+ (SIZEOF_MISMATCH) Passing argument "savepic" of type "uint8_t *" and argument
+ "8 /* sizeof (uint8_t *) */" to function "mlt_properties_set_data" is
+ suspicious. 142
+ mlt_properties_set_data ( properties , savename , savepic , sizeof(uint8_t*)
+ , mlt_pool_release, NULL ); Passing argument "savealpha" of type "uint8_t *"
+ and argument "8 /* sizeof (uint8_t *) */" to function
+ "mlt_properties_set_data" is suspicious. 143
+
+ * src/modules/motion_est/producer_slowmotion.c:
+ motion_est/producer_slowmotion.c: check for null pointer Fixes Coverity CID
+ 709401: Dereference before null check (REVERSE_INULL) Directly dereferencing
+ pointer "frame". 279 *frame = mlt_frame_init( MLT_PRODUCER_SERVICE(
+ this ) ); 280 281 mlt_properties properties =
+ MLT_PRODUCER_PROPERTIES(this); 282 283 Dereferencing "frame" before a null
+ check. 284 if( frame != NULL )
+
+ * src/modules/lumas/luma.c: lumas/luma.c: check lower bounds on input Upper
+ bounds are not checked yet but maybe should be. Partially fixes these
+ Coverity findings: CID 709423: Untrusted value as argument (TAINTED_SCALAR)
+ [select defect] 370 this.w = atoi( argv[ ++ arg ] );
+ 371 else if ( !strcmp( argv[ arg ], "-h" ) ) CID 709423:
+ Untrusted value as argument (TAINTED_SCALAR) [select defect] 372
+ this.h = atoi( argv[ ++ arg ] ); 373 else if (
+ !strcmp( argv[ arg ], "-bands" ) ) CID 709423: Untrusted value as argument
+ (TAINTED_SCALAR) [select defect] 374 this.bands =
+ atoi( argv[ ++ arg ] );
+
+ * src/modules/linsys/sdi_generator.c: linsys/sdi_generator.c: cast ints to
+ uint64_t Fixes Coverity CID 709367: Unintentional integer overflow
+ (OVERFLOW_BEFORE_WIDEN) Potentially overflowing expression
+ "audio_format->sample_rate / (myProfile->frame_rate_num /
+ myProfile->frame_rate_den) * sample_size / 8 * audio_format->channels" with
+ type "int" (32 bits, signed) is evaluated using 32-bit arithmetic before
+ being used in a context which expects an expression of type "uint64_t" (64
+ bits, unsigned). To avoid overflow, cast either operand to "uint64_t" before
+ performing the multiplication. 422 value =
+ itoa( 423
+ audio_format->sample_rate / (myProfile->frame_rate_num /
+ myProfile->frame_rate_den) * sample_size / 8 424
+ * audio_format->channels);
+
+ * src/modules/linsys/sdi_generator.c: linsys/sdi_generator.c: fix printf()
+ format Fixes compiler warning: In file included from
+ consumer_SDIstream.c:148:0: sdi_generator.c: In function ‘sdi_init’:
+ sdi_generator.c:352:3: warning: format ‘%li’ expects argument of type
+ ‘long int’, but argument 2 has type ‘uint64_t’ [-Wformat]
+ sdi_generator.c:354:3: warning: format ‘%li’ expects argument of type
+ ‘long int’, but argument 2 has type ‘uint64_t’ [-Wformat]
+
+ * src/modules/linsys/consumer_SDIstream.c: linsys/consumer_SDIstream.c: check
+ for null pointers Fixes Coverity CID 709351: Dereference after null check
+ (FORWARD_NULL) Comparing "this->device_file_audio" to null implies that
+ "this->device_file_audio" might be null. 370 if
+ (this->device_file_audio) { ... Passing null variable
+ "this->device_file_audio" to function "sdi_init", which dereferences it.
+ [show details] 422 if (!sdi_init(this->device_file_video,
+ this->device_file_audio, this->blanking, mlt_service_profile((mlt_service)
+ consumer), &this->audio_format)) {
+
+ * src/modules/linsys/consumer_SDIstream.c: linsys/consumer_SDIstream.c: check
+ for null pointer Fixes Coverity CID 709400: Dereference before null check
+ (REVERSE_INULL) Dereferencing pointer "this->device_file_video". (The
+ dereference is assumed on the basis of the 'nonnull' parameter attribute.)
+ 362 int fd = stat(this->device_file_video, &st); 363 if (fd ==
+ -1) { Dereferencing "this->device_file_video" before a null check. 364
+ if (this->device_file_video)
+
+ * src/modules/kino/filehandler.cc: kino/filehandler.cc: initialize variables
+ Fixes Coverity CID 709441: Uninitialized scalar field (UNINIT_CTOR)
+ Non-static class member field "dvinfo.dwDVAAuxCtl1" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "dvinfo.dwDVAAuxCtl" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "dvinfo.dwDVAAuxSrc1"
+ is not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "dvinfo.dwDVAAuxSrc" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "dvinfo.dwDVReserved" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "dvinfo.dwDVVAuxCtl"
+ is not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "dvinfo.dwDVVAuxSrc" is not initialized in this
+ constructor nor in any functions that it calls.
+
+ * src/modules/kino/filehandler.cc: kino/filehandler.cc: check return value
+ from lseek() Fixes Coverity CID 709329: Unchecked return value
+ (CHECKED_RETURN) Calling function "lseek" without checking return value (as
+ is done elsewhere 19 out of 20 times). No check of the return value of
+ "lseek(this->fd, 0L, 0)". 409 lseek( fd, 0, SEEK_SET );
+
+ * src/modules/kino/filehandler.cc: kino/filehandler.cc: initialize variable
+ Fixes Coverity CID 709442: Uninitialized scalar field (UNINIT_CTOR)
+ Non-static class member ""numBlocks"" is not initialized in this constructor
+ nor in any functions that it calls.
+
+ * src/modules/kino/filehandler.cc: kino/filehandler.cc: initialize variables
+ Fixes Coverity CID 709443: Uninitialized scalar field (UNINIT_CTOR)
+ Non-static class member ""everyNthFrame"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member
+ ""framesToSkip"" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member ""maxFileSize"" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ ""timeStamp"" is not initialized in this constructor nor in any functions
+ that it calls.
+
+ * src/modules/kino/avi.cc: kino/avi.cc: initialize variable Fixes Coverity
+ CID 709439: Uninitialized scalar field (UNINIT_CTOR) Non-static class member
+ field "dvinfo.dwDVAAuxCtl1" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "dvinfo.dwDVAAuxCtl"
+ is not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "dvinfo.dwDVAAuxSrc1" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "dvinfo.dwDVAAuxSrc" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "dvinfo.dwDVReserved"
+ is not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "dvinfo.dwDVVAuxCtl" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "dvinfo.dwDVVAuxSrc" is not initialized in this constructor nor in any
+ functions that it calls.
+
+ * src/modules/kino/avi.cc: kino/avi.cc: initialize variables Fixes Coverity
+ CID 709437: Uninitialized scalar field (UNINIT_CTOR) Non-static class member
+ ""dmlh_chunk"" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member ""odml_list"" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "streamHdr.dwFlags" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field
+ "streamHdr.dwInitialFrames" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.dwLength"
+ is not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.dwQuality" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "streamHdr.dwRate" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field
+ "streamHdr.dwSampleSize" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.dwScale" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.dwStart" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "streamHdr.dwSuggestedBufferSize" is not initialized in this constructor nor
+ in any functions that it calls. Non-static class member field
+ "streamHdr.fccHandler" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.fccType" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.rcFrame" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member field
+ "streamHdr.wLanguage" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.wPriority"
+ is not initialized in this constructor nor in any functions that it calls.
+
+ * src/modules/kino/avi.cc: kino/avi.cc: initialize variables Fixes Coverity
+ CID 709438: Uninitialized scalar field (UNINIT_CTOR) Non-static class member
+ ""dmlh"" is not initialized in this constructor nor in any functions that it
+ calls. Non-static class member field "mainHdr.dwFlags" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "mainHdr.dwHeight" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field
+ "mainHdr.dwInitialFrames" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field
+ "mainHdr.dwMaxBytesPerSec" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field
+ "mainHdr.dwMicroSecPerFrame" is not initialized in this constructor nor in
+ any functions that it calls. Non-static class member field
+ "mainHdr.dwPaddingGranularity" is not initialized in this constructor nor in
+ any functions that it calls. Non-static class member field
+ "mainHdr.dwReserved" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "mainHdr.dwStreams" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "mainHdr.dwSuggestedBufferSize" is not
+ initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "mainHdr.dwTotalFrames" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "mainHdr.dwWidth" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.dwFlags" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.dwInitialFrames" is not initialized
+ in this constructor nor in any functions that it calls. Non-static class
+ member field "streamHdr.dwLength" is not initialized in this constructor nor
+ in any functions that it calls. Non-static class member field
+ "streamHdr.dwQuality" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.dwRate" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.dwSampleSize" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "streamHdr.dwScale" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.dwStart" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.dwSuggestedBufferSize" is not
+ initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.fccHandler" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "streamHdr.fccType" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member field "streamHdr.rcFrame" is
+ not initialized in this constructor nor in any functions that it calls.
+ Non-static class member field "streamHdr.wLanguage" is not initialized in
+ this constructor nor in any functions that it calls. Non-static class member
+ field "streamHdr.wPriority" is not initialized in this constructor nor in any
+ functions that it calls.
+
+2012-07-30 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/kdenlive/producer_framebuffer.c:
+ kdenlive/producer_framebuffer.c: check return values Check calloc() return
+ and fix Coverity CID 709328: Unchecked return value (CHECKED_RETURN) Calling
+ function "mlt_producer_init" without checking return value (as is done
+ elsewhere 19 out of 20 times). No check of the return value of
+ "mlt_producer_init(producer, NULL)". 254 mlt_producer_init( producer,
+ NULL );
+
+ * src/modules/kdenlive/producer_framebuffer.c:
+ kdenlive/producer_framebuffer.c: check for null pointer Fixes Coverity CID
+ 709398: Dereference before null check (REVERSE_INULL) Directly dereferencing
+ pointer "frame". 203 *frame = mlt_frame_init( MLT_PRODUCER_SERVICE(
+ producer ) ); Dereferencing "frame" before a null check. 204 if( frame
+ != NULL )
+
+ * src/modules/jackrack/jack_rack.c: jack_rack_add_plugin(): handle null
+ pointer Fixes Coverity CID 710857: Explicit null dereferenced (FORWARD_NULL)
+ Assigning: "saved_plugin" = 0. 134 saved_plugin = NULL; 135 } 136 137
+ /* initialize plugin parameters */ Dereferencing null variable
+ "saved_plugin". 138 plugin->enabled = settings_get_enabled
+ (saved_plugin->settings);
+
+ * src/modules/jackrack/consumer_jack.c: consumer_jack.c: initialize
+ refresh_count with mutex held Fixes Coverity CID 709359. Locking
+ "self->refresh_mutex". 148 pthread_mutex_lock(
+ &self->refresh_mutex ); consumer_jack_s.refresh_count is being accessed with
+ lock "self->refresh_mutex" held. 149 self->refresh_count =
+ self->refresh_count <= 0 ? 1 : self->refresh_count + 1; 150
+ pthread_cond_broadcast( &self->refresh_cond ); 151
+ pthread_mutex_unlock( &self->refresh_mutex ); ... 486// int
+ last_position = -1; CID 709359: Data race condition (MISSING_LOCK) Accessing
+ variable "self->refresh_count" (consumer_jack_s.refresh_count) requires the
+ consumer_jack_s.refresh_mutex lock. 487 self->refresh_count = 0; ...
+ Locking "self->refresh_mutex". 544
+ pthread_mutex_lock( &self->refresh_mutex ); 545
+ if ( refresh == 0 && self->refresh_count <= 0 ) 546
+ { 547 consumer_play_video( self,
+ frame ); 548 pthread_cond_wait(
+ &self->refresh_cond, &self->refresh_mutex ); 549
+ } 550 mlt_frame_close( frame );
+ consumer_jack_s.refresh_count is being accessed with lock
+ "self->refresh_mutex" held.
+
+ * src/modules/jackrack/consumer_jack.c: consumer_jack.c: fix possible buffer
+ overflow CID 710871: Copy into fixed size buffer (STRING_OVERFLOW) You might
+ overrun the 30 byte fixed-size string "con_name" by copying "ports[i]"
+ without checking the length. 290 strcpy(
+ con_name, ports[i] );
+
+ * src/modules/gtk2/producer_pango.c: producer_pango.c: check for null pointer
+ Fixes Coverity CID 710867: Dereference before null check (REVERSE_INULL)
+ Dereferencing pointer "text". (The dereference is assumed on the basis of the
+ 'nonnull' parameter attribute.) 312 size_t inbuf_n = strlen(
+ text ); ... Dereferencing "text" before a null check. 319 if (
+ text != NULL && strcmp( text, "" ) && iconv( cd, &inbuf_p, &inbuf_n,
+ &outbuf_p, &outbuf_n ) != -1 )
+
+ * src/modules/gtk2/producer_pango.c: producer_pango_init(): check for null
+ pointer Fixes Coverity CID 710868: Dereference before null check
+ (REVERSE_INULL) Dereferencing pointer "markup". (The dereference is assumed
+ on the basis of the 'nonnull' parameter attribute.) 219
+ strcat( markup, line ); ... Dereferencing pointer
+ "markup". (The dereference is assumed on the basis of the 'nonnull' parameter
+ attribute.) 228 if ( markup[ strlen( markup )
+ - 1 ] == '\n' ) 229 markup[ strlen(
+ markup ) - 1 ] = '\0'; ... Dereferencing "markup" before a null check. 232
+ mlt_properties_set( properties, "markup", (
+ markup == NULL ? "" : markup ) );
+
+ * src/modules/frei0r/frei0r_helper.c: frei0r/frei0r_helper.c: use correct
+ argument to sizeof() Fixes Coverity CID 709407: Wrong sizeof argument
+ (SIZEOF_MISMATCH) Passing argument "inst" of type "void *" and argument "8 /*
+ sizeof (void *) */" to function "mlt_properties_set_data" is suspicious. 79
+ mlt_properties_set_data( prop , ctorname , inst,
+ sizeof(void*) , f0r_destruct , NULL );;
+
+ * src/modules/frei0r/factory.c: frei0r/factory.c: fix possible buffer
+ overflow and null dereference Fixes Coverity CID 709415: Copy into fixed
+ size buffer (STRING_OVERFLOW) You might overrun the 1024 byte fixed-size
+ string "pluginname" by copying "firstname" without checking the length. 390
+ strcat(pluginname,firstname); and CID 709397:
+ Dereference before null check (REVERSE_INULL) Dereferencing pointer
+ "firstname". (The dereference is assumed on the basis of the 'nonnull'
+ parameter attribute.) 390
+ strcat(pluginname,firstname);
+
+ * src/modules/frei0r/factory.c: frei0r/factory.c: fix sizeof() arguments
+ Fixes Coverity CID 709406: Wrong sizeof argument (SIZEOF_MISMATCH) Passing
+ argument "handle" of type "void *" and argument "8 /* sizeof (void *) */" to
+ function "mlt_properties_set_data" is suspicious. 281
+ mlt_properties_set_data(properties, "_dlclose_handle", handle , sizeof
+ (void*) , NULL , NULL ); 282
+ mlt_properties_set_data(properties, "_dlclose", dlclose , sizeof (void*) ,
+ NULL , NULL ); CID 709406: Wrong sizeof argument (SIZEOF_MISMATCH) [select
+ defect] 283 mlt_properties_set_data(properties,
+ "f0r_construct", f0r_construct , sizeof(void*),NULL,NULL); CID 709406: Wrong
+ sizeof argument (SIZEOF_MISMATCH) [select defect] 284
+ mlt_properties_set_data(properties, "f0r_update", f0r_update ,
+ sizeof(void*),NULL,NULL); 285 if (f0r_update2) 286
+ mlt_properties_set_data(properties, "f0r_update2", f0r_update2 ,
+ sizeof(void*),NULL,NULL); CID 709406: Wrong sizeof argument (SIZEOF_MISMATCH)
+ [select defect] 287 mlt_properties_set_data(properties,
+ "f0r_destruct", f0r_destruct , sizeof(void*),NULL,NULL);
+
+ * src/modules/dv/producer_libdv.c: producer_libdv.c: check for null pointer
+ Fixes Coverity CID 710856: Dereference after null check (FORWARD_NULL)
+ Comparing "*frame" to null implies that "*frame" might be null. 491
+ if ( *frame != NULL ) 492 data =
+ mlt_properties_get_data( MLT_FRAME_PROPERTIES( *frame ), "dv_data", NULL );
+ 493 } 494 At conditional (2): "data != NULL" taking the false branch.
+ 495 if ( data != NULL ) ... Passing null variable "*frame" to function
+ "mlt_frame_set_position", which dereferences it. [show details] 540
+ mlt_frame_set_position( *frame, mlt_producer_position( producer ) );
+
+2012-07-29 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/core/transition_region.c: transition_region.c: check for null
+ pointer Fixes Coverity CID 709350: Dereference after null check
+ (FORWARD_NULL) Comparing "type" to null implies that "type" might be null. 39
+ char *arg = type == NULL ? NULL : strchr( type, ':' ); ... Passing
+ null variable "type" to function "mlt_factory_filter", which dereferences it.
+ [show details] 50 filter = mlt_factory_filter( profile, type, arg );
+
+ * src/modules/core/producer_melt.c: producer_melt_init(): check for null
+ pointer Fixes Coverity CID 709349: Dereference after null check
+ (FORWARD_NULL) Comparing "playlist" to null implies that "playlist" might be
+ null. 401 if ( playlist != NULL ) ... Passing null
+ variable "&playlist->parent.parent.parent" to function
+ "mlt_properties_get_int", which dereferences it. [show details] 466 if
+ ( !mlt_properties_get_int( MLT_PLAYLIST_PROPERTIES( playlist ), "_melt_first"
+ ) || 467 mlt_producer_get_playtime( MLT_PLAYLIST_PRODUCER(
+ playlist ) ) > 0 ) 468 mlt_multitrack_connect( multitrack,
+ MLT_PLAYLIST_PRODUCER( playlist ), track );
+
+2012-07-26 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/core/filter_data_show.c: filter_data_show.c: check dest buffer
+ sizes Fixes Coverity CID 709413: Copy into fixed size buffer
+ (STRING_OVERFLOW) You might overrun the 512 byte fixed-size string "temp" by
+ copying "profile" without checking the length. 58
+ strcpy( temp, profile ); and CID 709414: Copy into fixed size buffer
+ (STRING_OVERFLOW) You might overrun the 512 byte fixed-size string "result"
+ by copying "metavalue" without checking the length. 225
+ strcat( result, metavalue ?
+ metavalue : "-" );
+
+2012-08-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c,
+ src/modules/avformat/producer_avformat.yml: add image cache size property to
+ avformat producer
+
+ * src/framework/mlt_cache.c: lower default cache size to 4 to reduce memory
+ usage
+
+2012-08-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_cache.c: fix memory leak when using mlt_cache for frames
+
+2012-08-03 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/oldfilm/filter_lines.c, src/modules/oldfilm/filter_lines.yml:
+ fix width output of filter in xml
+
+2012-07-26 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/avformat/consumer_avformat.c: consumer_avformat: handle
+ negative return value Fixes Coverity CID 709361: Argument cannot be negative
+ (NEGATIVE_RETURNS) Function "ftell(f)" returns a negative number. Assigning:
+ signed variable "size" = "ftell". 937
+ size = ftell( f ); 938 fseek( f, 0,
+ SEEK_SET ); 939 logbuffer = av_malloc(
+ size + 1 ); At conditional (1): "!logbuffer" taking the false branch. 940
+ if ( !logbuffer ) 941
+ mlt_log_fatal( MLT_CONSUMER_SERVICE( consumer ),
+ "Could not allocate log buffer\n" ); 942
+ else 943 { "size" is passed to a
+ parameter that cannot be negative. 944
+ size = fread( logbuffer, 1, size, f );
+
+2012-07-25 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/framework/mlt_field.c, src/framework/mlt_frame.c,
+ src/framework/mlt_multitrack.c, src/framework/mlt_playlist.c,
+ src/framework/mlt_properties.c, src/framework/mlt_repository.c,
+ src/framework/mlt_service.c, src/framework/mlt_tractor.c,
+ src/modules/core/filter_audioconvert.c, src/modules/core/filter_crop.c,
+ src/modules/core/filter_imageconvert.c, src/modules/core/filter_panner.c,
+ src/modules/core/filter_resize.c, src/modules/core/producer_ppm.c,
+ src/modules/core/transition_composite.c, src/modules/core/transition_mix.c,
+ src/modules/dv/producer_libdv.c, src/modules/gtk2/producer_pango.c,
+ src/modules/gtk2/producer_pixbuf.c, src/modules/kino/producer_kino.c,
+ src/modules/linsys/consumer_SDIstream.c,
+ src/modules/normalize/filter_volume.c,
+ src/modules/qimage/producer_kdenlivetitle.c,
+ src/modules/qimage/producer_qimage.c, src/modules/rtaudio/RtAudio.cpp,
+ src/modules/sdl/consumer_sdl.c, src/modules/sdl/consumer_sdl_audio.c,
+ src/modules/sdl/consumer_sdl_preview.c, src/modules/sdl/consumer_sdl_still.c,
+ src/modules/xml/consumer_xml.c, src/modules/xml/producer_xml.c: Fix calloc()
+ parameter ordering First parameter to calloc() is the count and second the
+ amount of bytes for each item. Likely this has no run time effect since the
+ resulting buffer size is the same.
+
+ * src/framework/mlt_property.c: mlt_property_get_time(): get mutex before
+ accessing self->types Fixes Coverity CID 709356: Data race condition
+ (MISSING_LOCK) Accessing variable "self->types" (mlt_property_s.types)
+ requires the mlt_property_s.mutex lock. 871 self->types |=
+ mlt_prop_string;
+
+ * src/framework/mlt_producer.c: mlt_producer_seek(): check that eof is not
+ NULL Fixes Coverity CID 709348: Dereference after null check (FORWARD_NULL)
+ Comparing "eof" to null implies that "eof" might be null. 310 else if
+ ( use_points && ( eof == NULL || !strcmp( eof, "pause" ) ) && position >=
+ mlt_producer_get_playtime( self ) ) 311 { 312
+ mlt_producer_set_speed( self, 0 ); 313 position =
+ mlt_producer_get_playtime( self ) - 1; 314 } At conditional (3):
+ "use_points" taking the true branch. Passing null variable "eof" to function
+ "strcmp", which dereferences it. (The dereference is assumed on the basis of
+ the 'nonnull' parameter attribute.) 315 else if ( use_points &&
+ !strcmp( eof, "loop" ) && position >= mlt_producer_get_playtime( self ) )
+
+ * src/framework/mlt_producer.c: mlt_producer_new(): check return value from
+ mlt_producer_init()
+
+ * src/framework/mlt_playlist.c: mlt_playlist_init(): check return values from
+ mlt_producer_init() and calloc() Fixes Coverity CID 709327: Unchecked return
+ value (CHECKED_RETURN) Calling function "mlt_producer_init" without checking
+ return value (as is done elsewhere 17 out of 20 times). No check of the
+ return value of "mlt_producer_init(producer, self)". 73
+ mlt_producer_init( producer, self );
+
+ * src/framework/mlt_frame.c: mlt_frame_get_waveform(): handle memory
+ allocation failure Fixes Coverity CID 709347. At conditional (1): "bitmap
+ != NULL" taking the false branch. CID 709347: Dereference after null check
+ (FORWARD_NULL) Comparing "bitmap" to null implies that "bitmap" might be
+ null. 802 if ( bitmap != NULL ) 803 memset( bitmap, 0,
+ size ); 804 mlt_properties_set_data( properties, "waveform", bitmap,
+ size, ( mlt_destructor )mlt_pool_release, NULL ); ... 826
+ // Position buffer pointer using y coordinate, stride, and x coordinate
+ Assigning null: "p" = "bitmap + i / skip + displacement * w". 827
+ unsigned char *p = bitmap + i / skip + displacement * w; ... 831
+ if ( *pcm < 0 ) Dereferencing null variable "p".
+ 832 p[ w * k ] = ( k == 0 ) ? 0xFF :
+ p[ w * k ] + gray; 833 else Dereferencing null
+ variable "p". 834 p[ w * k ] = ( k ==
+ height ) ? 0xFF : p[ w * k ] + gray;
+
+ * src/framework/mlt_filter.c: mlt_filter.c: fix possible buffer overflows
+ Fixes Coverity CID 709411: Copy into fixed size buffer (STRING_OVERFLOW) You
+ might overrun the 20 byte fixed-size string "name" by copying "unique_id"
+ without checking the length. 257 strcat( name, unique_id ); and CID
+ 709412: Copy into fixed size buffer (STRING_OVERFLOW) You might overrun the
+ 20 byte fixed-size string "name" by copying "unique_id" without checking the
+ length. 302 strcat( name, unique_id );
+
+ * src/framework/mlt_filter.c: mlt_filter_new(): check return value from
+ mlt_filter_init() Fixes Coverity CID 709326: Unchecked return value
+ (CHECKED_RETURN) Calling function "mlt_filter_init" without checking return
+ value (as is done elsewhere 7 out of 8 times). No check of the return value
+ of "mlt_filter_init(self, NULL)". 78 mlt_filter_init( self,
+ NULL ); 79 return self;
+
+ * src/modules/avformat/vdpau.c: vdpau: reduce runtime detection cost Don't
+ try to dlopen() every time, once is enough.
+
+2012-07-25 Christian Marillat <marillat@debian.org>
+
+ * src/modules/avformat/vdpau.c: Fix vdpau library paths They have changed in
+ Debian.
+
+ * src/modules/avformat/vdpau.c: vdpau compilation fix for ffmpeg 0.11 In
+ file included from producer_avformat.c:157:0: vdpau.c: In function
+ ‘vdpau_get_buffer’: vdpau.c:162:10: error: ‘AVFrame’ has no member
+ named ‘age’ vdpau.c:169:10: error: ‘AVFrame’ has no member named
+ ‘age’
+
+2012-07-24 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/framework/mlt_consumer.c: mlt_consumer_start(): check return value from
+ mlt_properties_get_int() Fixes Coverity CID 709343: Division or modulo by
+ zero (DIVIDE_BY_ZERO) Division by expression
+ "mlt_properties_get_int(properties, "frame_rate_num")" which may be zero has
+ undefined behavior On this path, function call
+ "mlt_properties_get_int(properties, "frame_rate_num")" has return value of 0
+ 442 int frame_duration = 1000000 / mlt_properties_get_int( properties,
+ "frame_rate_num" ) * 443 mlt_properties_get_int(
+ properties, "frame_rate_den" );
+
+ * src/framework/mlt_consumer.c: mlt_consumer_start(): get mutex before
+ accessing put_active Fixes Coverity CID 709355: Data race condition
+ (MISSING_LOCK) Accessing variable "self->put_active"
+ (mlt_consumer_s.put_active) requires the mlt_consumer_s.put_mutex lock. 411
+ self->put_active = 1;
+
+ * src/framework/mlt_consumer.c: mlt_consumer_new(): handle return value from
+ mlt_consumer_init() If init() fails return NULL. Fixes Coverity CID 709325.
+ At conditional (1): "self != NULL" taking the true branch. 339 if (
+ self != NULL ) CID 709325: Unchecked return value (CHECKED_RETURN) Calling
+ function "mlt_consumer_init" without checking return value (as is done
+ elsewhere 10 out of 11 times). No check of the return value of
+ "mlt_consumer_init(self, NULL, profile)". 340
+ mlt_consumer_init( self, NULL, profile );
+
+ * src/framework/mlt_consumer.c: mlt_consumer.c: watch out for null pointer
+ Fixes Coverity CID 709393: Dereference before null check (REVERSE_INULL)
+ Directly dereferencing pointer "profile". 235
+ profile->sample_aspect_num = mlt_properties_get_int( properties,
+ "sample_aspect_num" ); Dereferencing "profile" before a null check. 236
+ if ( profile )
+
+2012-07-23 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/framework/mlt_cache.c: mlt_cache.c: watch out for null pointer Fixes
+ Coverity CID 709346: Dereference after null check (FORWARD_NULL) Comparing
+ "result" to null implies that "result" might be null. 449 if (
+ result && result->data ) 450 result->refcount++;
+ Dereferencing null variable "result". 451 mlt_log( NULL,
+ MLT_LOG_DEBUG, "%s: get %d = %p, %p\n", __FUNCTION__, cache->count - 1, *hit,
+ result->data ); 452
+
+ * src/framework/mlt_cache.c: mlt_cache.c: check for null pointer Fixes CID
+ 709392: Dereference before null check (REVERSE_INULL).
+
+2012-07-02 Mikko Rapeli <mikko.rapeli@iki.fi>
+
+ * src/modules/kino/riff.cc: riff.cc: Fail if lseek() fails Fixes Coverity
+ CID 709362: Argument cannot be negative (NEGATIVE_RETURNS) Function
+ "lseek(this->fd, 0LL, 0)" returns a negative number. Assigning: signed
+ variable "pos" = "lseek". ... "pos" is passed to a parameter that cannot be
+ negative. 548 fail_if( lseek( fd, pos, SEEK_SET ) == ( off_t )
+ - 1 );
+
+ * src/modules/kino/riff.cc: riff.cc: Initialize data in constructor Fixes
+ Coverity CID 709444: Uninitialized scalar field (UNINIT_CTOR) Non-static
+ class member ""length"" is not initialized in this constructor nor in any
+ functions that it calls. Non-static class member ""name"" is not initialized
+ in this constructor nor in any functions that it calls. Non-static class
+ member ""offset"" is not initialized in this constructor nor in any functions
+ that it calls. Non-static class member ""parent"" is not initialized in this
+ constructor nor in any functions that it calls. Non-static class member
+ ""type"" is not initialized in this constructor nor in any functions that it
+ calls. Non-static class member ""written"" is not initialized in this
+ constructor nor in any functions that it calls.
+
+2012-07-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c, src/modules/qimage/qimage_wrapper.cpp:
+ fix crash when switching image formats with alpha This happens when
+ switching from image format with distinct alpha channel (yuv422) to one with
+ embedded alpha channel (rgb24a). Reported-by: j-b-m
+
+ * src/framework/mlt_properties.c: fix memory read error found by valgrind
+
+2012-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_events.c: fix memory leak and missing unlock
+ (coverity-709377 & 709354)
+
+ * src/modules/normalize/filter_volume.c: fix possible divide by zero
+ (coverity-709344)
+
+ * src/modules/oldfilm/filter_dust.c: remove dead code (coverity-709337)
+
+ * src/modules/core/transition_composite.c: remove dead code (coverity-709335
+ & 709336)
+
+ * src/framework/mlt_playlist.c: remove dead code (coverity-709334)
+
+ * src/modules/videostab/stabilize.c: fix faulty image format tests
+ (coverity-709330, 709331, & 709332)
+
+ * src/modules/videostab/stabilize.c: fix memory leak (coverity-709387,
+ 709388, & 709389)
+
+2012-07-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_deque.c: fix crash on null pointer reported by Mikko
+ Rapeli
+
+ * src/framework/mlt_deque.c: initialze with calloc instead of memberwise
+ (future-proofing)
+
+ * src/framework/mlt_events.c: fix uninitialized memory in mlt_events
+
+2012-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/Makefile: fix regression building on 32-bit
+
+ * src/modules/videostab/stab/klt/klt.c: fix uninitialized memory
+ (coverity-709434)
+
+ * src/modules/avformat/producer_avformat.c: fix out-of-bounds read
+ (coverity-709368)
+
+ * src/modules/xml/producer_xml.c: fix memory leak (coverity-710866)
+
+ * src/modules/xml/producer_xml.c: fix memory leak (coverity-710865)
+
+ * src/modules/xml/consumer_xml.c: fix memory leak (coverity-710864)
+
+ * src/modules/gtk2/filter_rescale.c: fix memory leak (coverity-710863)
+
+ * src/modules/videostab/stab/klt/klt.c: fix uninitialized var
+ (coverity-709434)
+
+ * src/modules/kino/riff.cc: fix uninitialized var (coverity-709433)
+
+ * src/framework/mlt_multitrack.c: fix uninitialized array (coverity-709432)
+
+ * src/framework/mlt_frame.c: fix uninitialized vars (coverity-709430 &
+ 709431)
+
+ * src/modules/vorbis/producer_vorbis.c: fix memory leak (coverity-709391)
+
+ * src/modules/videostab/stabilize.c, src/modules/videostab/stabilize.h:
+ remove unused function (coverity-709390)
+
+ * src/modules/sox/filter_sox.c: fix memory leak (coverity-709386)
+
+ * src/modules/core/producer_melt.c: fix file handle leak (coverity-709383)
+
+ * src/modules/core/filter_imageconvert.c: fix memory leak (coverity-709382)
+
+ * src/modules/avformat/consumer_avformat.c: fix file handle leak
+ (coverity-709381)
+
+ * src/mlt++/MltFilteredProducer.cpp: fix memory leak (coverity-709380)
+
+ * src/mlt++/MltService.cpp, src/mlt++/MltService.h: add
+ Service::get_profile() returns mlt_profile
+
+ * src/framework/mlt_tractor.c: fix memory leak (coverity-709379)
+
+ * src/framework/mlt_profile.c: fix memory leak (coverity-709378)
+
+ * src/framework/mlt_consumer.c: fix memory leak (coverity-709376)
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h: fix memory leak
+ (coverity-709375)
+
+ * src/modules/avformat/producer_avformat.c: fix out-of-bounds read
+ (coverity-709368 & 709369)
+
+2012-07-20 Dan Dennedy <dan@dennedy.org>
+
+ * AUTHORS, src/modules/core/Makefile,
+ src/modules/core/composite_line_yuv_sse2_simple.c,
+ src/modules/core/transition_composite.c: improve compatibility to compile
+ composite sse2 (macports-35243)
+
+2012-07-19 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/avformat/producer_avformat.c: move mutex and deque
+ initialization to producer init method
+
+ * src/modules/avformat/producer_avformat.c: fix leak of dv packets
+
+ * src/modules/avformat/producer_avformat.c: fix memleak if file fails to open
+
+2012-07-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/melt/melt.c: add define MELT_NOSDL to not use SDL_main() This is
+ helpful on OS X when using melt as a utility to prevent the program from
+ appearing in the Dock.
+
+2012-07-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: fix crash in avformat consumer
+ when audio encoding fails
+
+2012-07-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_loader.c, src/modules/xml/producer_xml.c: accept
+ file:// prefix on MLT XML file
+
+2012-06-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/plugin_mgr.c: fix some LADSPA crashing on dlclose on
+ some systems (3538363)
+
+2012-06-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_playlist.c, src/framework/mlt_playlist.h,
+ src/mlt++/MltPlaylist.cpp, src/mlt++/MltPlaylist.h,
+ src/modules/core/producer_melt.c, src/modules/xml/producer_xml.c: add support
+ for time string to playlist blanks
+
+ * src/modules/core/transition_region.c: make alpha channel independent of
+ lifetime of region frame
+
+ * src/modules/core/transition_region.c: fix memory leak when using
+ filter_only with region transition
+
+ * src/modules/core/transition_region.c: improve readability
+
+ * src/modules/core/transition_region.c: rename this to transition and frame
+
+ * src/modules/core/transition_region.c: fix filters that need progress with
+ region filter/transition See for example, obscure filter, as used in
+ demo/mlt_obscure.
+
+ * src/modules/core/filter_region.c: fix race condition in region filter when
+ parallel processing based on patch from j-b-m
+
+ * src/modules/jackrack/consumer_jack.c,
+ src/modules/jackrack/consumer_jack.yml,
+ src/modules/rtaudio/consumer_rtaudio.cpp,
+ src/modules/rtaudio/consumer_rtaudio.yml,
+ src/modules/sdl/consumer_sdl_audio.c, src/modules/sdl/consumer_sdl_audio.yml:
+ add support for audio scrubbing to audio-only consumers
+
+2012-06-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/filter_jackrack.c: change printfs in filter_jackrack
+ to mlt_log_verbose
+
+ * src/modules/jackrack/filter_jackrack.c: send jack silence on buffer
+ underrun This occurs with the sdl_preview or any of the audio-only consumers
+ when paused. Otherwise, jack just plays unset memory, which is usually
+ something worse than just noise.
+
+ * src/modules/xml/producer_xml.c: fix loading xml file on windows
+
+2012-06-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: stop checking PTS if we are only
+ using DTS
+
+2012-06-20 Jean-Baptiste Mardelle <jb@kdenlive.org>
+
+ * src/modules/qimage/configure: Fix Qt4 detection when Qt3 is installed
+
+2012-06-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_producer.c, src/framework/mlt_producer.h,
+ src/mlt++/MltProducer.cpp, src/mlt++/MltProducer.h: add
+ mlt_producer_seek_time and mlt_producer_frame_time
+
+ * .gitignore: add to .gitignore
+
+ * src/mlt++/MltFilteredConsumer.cpp, src/mlt++/MltFilteredConsumer.h,
+ src/mlt++/MltFilteredProducer.cpp, src/mlt++/MltFilteredProducer.h,
+ src/mlt++/MltPushConsumer.cpp, src/mlt++/MltPushConsumer.h: add const-ness to
+ some strings in specialized service classes
+
+2012-06-18 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/producer_xml.c: fix loading xml with producer not enclosed
+ in playlist or multitrack
+
+ * src/modules/rotoscoping/filter_rotoscoping.c,
+ src/modules/vmfx/filter_shape.c, src/modules/xine/vf_yadif_template.h,
+ src/modules/xine/yadif.c: fix clang errors
+
+2012-06-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/rtaudio/consumer_rtaudio.cpp: add support for AUDIODEV
+ environment var to rtaudio
+
+ * src/modules/avformat/producer_avformat.c,
+ src/modules/avformat/producer_avformat.yml: overhaul a/v sync and seeking in
+ avformat producer The new_seek property changed to use_pts. This
+ consolidates old seek and new seek code, improves a/v sync for more files,
+ and improves seek performance for AVCHD in general (including libav).
+
+ * src/modules/decklink/common.cpp: fix BSTR string conversion under Windows
+
+2012-06-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: fix crash when reporting error
+ in decklink producer init
+
+ * NEWS, configure, src/framework/mlt_version.h: set interim version to 0.8.1
+
+2012-06-01 Dan Dennedy <dan@dennedy.org>
+
+ * ChangeLog: update ChangeLog for v0.8.0
+
+ * Doxyfile, configure, docs/melt.1, src/framework/mlt_version.h,
+ src/modules/avformat/configure: set version to 0.8.0
+
+ * NEWS: add release notes for v0.8.0
+
+ * src/modules/avformat/producer_avformat.c: fix image format regression in
+ avformat caching
+
+ * src/modules/avformat/producer_avformat.c: remove unused alpha_cache member
+
+ * src/modules/avformat/producer_avformat.c: fix video_delay when using
+ new_seek (AVCHD)
+
+ * src/modules/avformat/producer_avformat.c: fix a/v sync after recent change
+ for faster AVCHD seeking
+
+2012-05-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/scale_line_22_yuv_mmx.S: fix regression in build on 32-bit
+ linux gcc 4.6.1
+
+2012-06-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: fix image format regression in
+ avformat caching
+
+ * src/modules/avformat/producer_avformat.c: remove unused alpha_cache member
+
+ * src/modules/avformat/producer_avformat.c: fix video_delay when using
+ new_seek (AVCHD)
+
+ * src/modules/avformat/producer_avformat.c: fix a/v sync after recent change
+ for faster AVCHD seeking
+
+2012-05-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/scale_line_22_yuv_mmx.S: fix regression in build on 32-bit
+ linux gcc 4.6.1
+
+2012-05-31 Jean-Baptiste Mardelle <jb@kdenlive.org>
+
+ * src/modules/kdenlive/filter_freeze.c: Fix indentation
+
+2012-05-30 eddrog <eddrog@users.sourceforge.net>
+
+ * src/modules/jackrack/filter_jackrack.c: fix initialize status to zero
+
+2012-05-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: convert avformat producer to use
+ the new mlt_cache_put_frame
+
+ * src/modules/decklink/producer_decklink.cpp: fix decklink producer dropping
+ frames after few hours mlt_cache_put() was not scalable when using position
+ as a key into the cache. Its reliance upon mlt_properties for
+ reference-counting cache items caused its hash tabe to grow too large after a
+ few hundred thousand frames. This version uses the new mlt_cache_put_frame,
+ which is simpler and more scalable by only using the cache arrays and copying
+ data.
+
+ * src/framework/mlt_cache.c, src/framework/mlt_cache.h: add
+ mlt_cache_put_frame and mlt_cache_get_frame
+
+ * src/modules/gtk2/Makefile, src/modules/gtk2/configure,
+ src/modules/gtk2/scale_line_22_yuv_mmx.S, src/modules/jackrack/Makefile,
+ src/modules/jackrack/configure: fix cross-compiling gtk2 and jackrack modules
+ for windows
+
+2012-05-26 Dan Dennedy <dan@dennedy.org>
+
+ * configure, src/mlt++/configure, src/modules/qimage/configure,
+ src/modules/swfdec/Makefile, src/modules/videostab/stab/estimate.c: add
+ configure options and fixes for cross-compiling
+
+2012-05-22 Jean-Baptiste Mardelle <jb@kdenlive.org>
+
+ * src/modules/kdenlive/filter_freeze.c: Fix filter freeze problem with clip
+ cuts
+
+2012-05-22 eddrog <eddrog@users.sourceforge.net>
+
+ * src/modules/jackrack/filter_jackrack.c: fix unique name problem in
+ filter_jackrack when several filter instances are loaded within one process
+ on evaluating the jack status JackNameNotUnique
+
+2012-05-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/DeckLinkAPI.h,
+ src/modules/decklink/DeckLinkAPIDispatch.cpp,
+ src/modules/decklink/DeckLinkAPI_h.h, src/modules/decklink/DeckLinkAPI_i.cpp,
+ src/modules/decklink/LinuxCOM.h, src/modules/decklink/Makefile,
+ src/modules/decklink/common.cpp, src/modules/decklink/common.h,
+ src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/darwin/DeckLinkAPI.h,
+ .../decklink/darwin/DeckLinkAPIDispatch.cpp,
+ src/modules/decklink/linux/DeckLinkAPI.h,
+ src/modules/decklink/linux/DeckLinkAPIDispatch.cpp,
+ src/modules/decklink/linux/LinuxCOM.h,
+ src/modules/decklink/producer_decklink.cpp,
+ src/modules/decklink/win/DeckLinkAPI_h.h,
+ src/modules/decklink/win/DeckLinkAPI_i.cpp: fix decklink build for OS X
+
+2012-05-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/producer_xml.c: indicate if mlt xml is seekable based on
+ its producers
+
+2012-04-18 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/producer_decklink.cpp: fix decklink build on Windows
+
+2012-04-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/plus/filter_affine.c, src/modules/plus/interp.h,
+ src/modules/plus/transition_affine.c: fix distortion handling alpha channel
+ in affine transition Reported-by: j-b-m
+
+2012-04-10 Dan Dennedy <dan@dennedy.org>
+
+ * demo/mlt_ticker, src/modules/plus/filter_affine.c: fix background alpha
+ channel of affine filter broke when black producer was changed to opaque
+ like other colors
+
+ * src/modules/plus/interp.h: remove remap functions and document
+ interpolation parameters in English
+
+2012-04-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_colour.c: fix color:black
+
+ * src/modules/core/transition_luma.c: fix regression due to alpha channels of
+ A and B swapped
+
+ * src/modules/core/producer_colour.c: fix the alpha channel to be opaque on
+ empty string
+
+ * src/modules/plus/transition_affine.c,
+ src/modules/qimage/qimage_wrapper.cpp: fix regressions during refactorization
+
+2012-04-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/filter_jackrack.c: fix jack-stopped event with some
+ JACK clients It appears that JackTransportStopped is not received in
+ JackSyncCallback unless the client that calls jack_transport_stop() also
+ calls jack_transport_locate().
+
+ * src/framework/mlt_property.c: fix build for OS X
+
+2012-03-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/producer_xml.c: add support for parsing time(code) values
+ to xml producer
+
+ * src/modules/xml/consumer_xml.c, src/modules/xml/consumer_xml.yml: add
+ time_format property to xml consumer Now you can save the in, out, and
+ length properties as timecode or clock values. Default unit it still in frame
+ count.
+
+ * src/framework/mlt_producer.c, src/framework/mlt_producer.h,
+ src/mlt++/MltProducer.cpp, src/mlt++/MltProducer.h: add
+ mlt_producer_get_length_time() More functions that return time strings will
+ be added later.
+
+ * configure, src/framework/mlt_properties.c, src/framework/mlt_properties.h,
+ src/framework/mlt_property.c, src/framework/mlt_property.h,
+ src/framework/mlt_types.h, src/mlt++/MltProperties.cpp,
+ src/mlt++/MltProperties.h: add support for timecode and clock time strings to
+ the framework
+
+2012-04-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: make speed of editing AVCHD
+ tolerable This only works for FFmpeg v0.9.1 or newer but not yet for libav.
+ This uses the image scaling interpolation mode as a hint to perform less
+ (nearest) or more (bilinear or bicubic) diligent seeking. Since most editors
+ are using the SDL consumer with rescale=nearest, this makes scrubbing and
+ cuts/transitions faster. Then, upon encoding, since the avformat consumer
+ uses bilinear by default, it will use the slower, more accurate seeking to
+ ensure the integrity of cuts with an in point. This change has some quirks:
+ frame-stepping backwards sometimes does not update the image, and sometimes a
+ big jump forward shows artifacts.
+
+2012-03-27 Dan Dennedy <dan@dennedy.org>
+
+ * GPLv3, configure, src/modules/qimage/Makefile,
+ src/modules/qimage/configure, src/modules/qimage/factory.c: require configure
+ --enable-gpl3 for GPLv3 services (currently only vqm)
+
+2012-03-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c, src/modules/qimage/producer_qimage.c:
+ fix resource leak regression in image producers
+
+2012-03-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/producer_decklink.cpp: enumerate DeckLink devices when
+ list_devices property is set
+
+2012-03-19 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/producer_decklink.cpp: Initialize all decklink interface
+ pointers and reset them upon release. Also, add a couple of missing
+ releases.
+
+2012-03-18 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: Fix incorrect precompiler
+ conditionals for libav/ffmpeg versions. Needed to support ffmpeg 0.9 and
+ 0.10 releases.
+
+2012-03-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/configure: add gdk-pixbuf-2.0 dependency to pango producer
+
+ * src/framework/configure: fix build on OS X 10.6
+
+2012-03-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/consumer_decklink.yml,
+ src/modules/decklink/producer_decklink.cpp,
+ src/modules/decklink/producer_decklink.yml: enumerate available devices in
+ decklink module
+
+ * src/modules/avformat/producer_avformat.c: fix segfault on failure to decode
+ with multi-threaded decoding self->got_picture was somewhat redundant with
+ self->av_frame, but not synchronized and not ever really reset. So, just
+ remove that state and use the state of self->av_frame and local got_picture.
+
+2012-03-12 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/avformat/producer_avformat.c: fix playing audio with 0 channels
+
+2012-03-11 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/gtk2/producer_pixbuf.yml,
+ src/modules/qimage/producer_qimage.yml: Fix broken pixbuf and qimage producer
+ metadata.
+
+2012-03-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pango.c, src/modules/gtk2/producer_pixbuf.c,
+ src/modules/qimage/producer_qimage.c: indicate image producers seekable
+
+2012-03-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.yml,
+ src/modules/qimage/producer_qimage.yml: update service metadata for pixbuf
+ and qimage
+
+2012-03-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c, src/modules/qimage/producer_qimage.c:
+ allow %u in image sequence pattern containing begin value
+
+ * src/modules/gtk2/producer_pixbuf.c, src/modules/qimage/producer_qimage.c:
+ add image sequences where scanf format contains begin value For example, if
+ an image sequence begins with the file foo1234.png, you can use the resource
+ string "foo%1234d.png" to load it.
+
+ * src/modules/qimage/producer_qimage.c: refactor load_filenames in qimage
+
+ * src/modules/gtk2/producer_pixbuf.c: refactor load_filenames in pixbuf
+
+2012-03-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp,
+ src/modules/qimage/qimage_wrapper.cpp: remove a couple more remnants of
+ legacy real_width and _height
+
+ * src/modules/avformat/producer_avformat.c, src/modules/dv/producer_libdv.c:
+ remove deprecated source_fps property
+
+ * src/framework/mlt_tractor.c, src/modules/avformat/producer_avformat.c,
+ src/modules/core/consumer_multi.c, src/modules/core/filter_crop.c,
+ src/modules/core/filter_rescale.c, src/modules/core/filter_resize.c,
+ src/modules/core/producer_colour.c, src/modules/core/producer_consumer.c,
+ src/modules/core/producer_loader.c, src/modules/core/transition_composite.c,
+ src/modules/dv/producer_libdv.c, src/modules/gtk2/producer_pango.c,
+ src/modules/gtk2/producer_pixbuf.c,
+ src/modules/kdenlive/producer_framebuffer.c,
+ src/modules/plus/transition_affine.c, src/modules/sdl/producer_sdl_image.c,
+ src/modules/swfdec/producer_swfdec.c,
+ src/modules/videostab/filter_videostab2.c, src/modules/vmfx/producer_pgm.c:
+ replace legacy real_width and _height with meta.media.width and .height This
+ takes advantage of mlt_producer copying all meta properties from producer to
+ frame so we do not have to remember to do it everywhere it is needed.
+
+2012-02-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_frame.c,
+ src/framework/mlt_profile.c, src/framework/mlt_tractor.c,
+ src/framework/mlt_transition.c, src/modules/core/filter_crop.c,
+ src/modules/core/filter_watermark.c, src/modules/kdenlive/filter_freeze.c,
+ src/modules/kdenlive/producer_framebuffer.c,
+ src/modules/oldfilm/filter_dust.c, src/modules/plus/filter_affine.c,
+ src/modules/plus/transition_affine.c: remove consumer_aspect_ratio property -
+ use profile instead
+
+ * src/framework/mlt_tractor.c, src/modules/core/filter_watermark.c,
+ src/modules/core/transition_composite.c,
+ src/modules/kdenlive/filter_freeze.c: remove output_ratio property - use
+ profile instead
+
+ * src/modules/core/filter_crop.c, src/modules/core/filter_obscure.c,
+ src/modules/core/filter_rescale.c, src/modules/core/filter_resize.c,
+ src/modules/core/filter_watermark.c, src/modules/core/transition_composite.c,
+ src/modules/plus/filter_affine.c, src/modules/plus/transition_affine.c:
+ remove usage of normalised_width and _height properties from services
+
+ * src/modules/plus/transition_affine.c: rename this to transition and affine
+
+ * src/modules/core/transition_composite.c: rename this to self in composite
+ transition
+
+ * src/modules/core/filter_resize.c: rename this to frame and filter
+
+ * src/modules/core/filter_rescale.c: rename this to frame and filter
+
+ * src/modules/core/filter_obscure.c: rename this to filter
+
+ * src/modules/core/filter_crop.c: rename this to frame and filter
+
+ * src/framework/mlt_frame.c, src/framework/mlt_tractor.c: remove
+ normalised_width and _height properties from framework
+
+2012-03-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c, src/modules/qimage/qimage_wrapper.cpp:
+ fix regression with adding image conversion to image producers
+
+2012-03-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/producer_qimage.c,
+ src/modules/qimage/qimage_wrapper.cpp, src/modules/qimage/qimage_wrapper.h:
+ convert to and cache requested format in qimage
+
+2012-03-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/producer_qimage.c,
+ src/modules/qimage/qimage_wrapper.cpp, src/modules/qimage/qimage_wrapper.h:
+ split refresh_qimage() into refresh_qiamge() and refresh_image()
+
+ * src/modules/gtk2/producer_pixbuf.c: fix regression in pixbuf setting
+ _real_width and _height for loader
+
+ * src/modules/qimage/qimage_wrapper.cpp: factorize out exif reorientation in
+ qimage producer
+
+ * src/modules/qimage/qimage_wrapper.cpp: remove the cache property from
+ qimage This is removed in the course of refactorizing to make the code more
+ maintainable for improvements. If you really need to cache an entire image
+ sequence in memory use a ramdisk.
+
+2012-02-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/kdenlivetitle_wrapper.cpp: fix QObject::connect of type
+ QTextCursor errors
+
+2012-02-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c: fix regressions caused by refactoring
+ and format conversion
+
+ * src/modules/gtk2/producer_pixbuf.c: convert to and cache requested format
+ in pixbuf Original idea for patch came from Maksym Veremeyenko.
+
+2012-02-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c: split refresh_image() into
+ refresh_pixbuf() and refresh_image()
+
+ * src/modules/core/transition_composite.yml,
+ src/modules/gtk2/producer_pixbuf.yml: couple of small service metadata fixes
+
+2012-02-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pixbuf.c: factorize out exif reorientation
+
+ * src/modules/gtk2/producer_pixbuf.c: remove the cache property from pixbuf
+ This is removed in the course of refactorizing to make the code more
+ maintainable for improvements. If you really need to cache an entire image
+ sequence in memory use a ramdisk.
+
+2012-02-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/loader.dict: change priority of producers for swf files
+ (3494517)
+
+2012-02-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl_audio.c: the audio also stutters on Linux when
+ paused
+
+2012-02-25 j-b-m <jb@kdenlive.org>
+
+ * src/modules/avformat/consumer_avformat.c: fix some audio codecs not
+ detected with newer libavcodec
+
+2012-02-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/mlt++/MltProfile.cpp: fix Mlt::Profile::set_frame_rate setting
+ incorrect fields
+
+ * src/modules/avformat/consumer_avformat.c: fix segfault on stop in avformat
+ consumer
+
+ * src/modules/avformat/producer_avformat.c: add meta.media.codec.width and
+ .height
+
+ * src/modules/decklink/producer_decklink.cpp,
+ src/modules/decklink/producer_decklink.yml: fix regression when using
+ producer 'consumer' with decklink This feature now requires one to set the
+ preview property on this producer to support special preview mode when the
+ speed is 0.
+
+ * src/modules/core/composite_line_yuv_sse2_simple.c: fix asm compilation on
+ some versions of gcc
+
+2012-02-20 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/decklink/producer_decklink.cpp: allow start decklink producer
+ from pause
+
+2012-02-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_frame.c, src/modules/avformat/filter_avcolour_space.c,
+ src/modules/core/filter_crop.c, src/modules/core/filter_resize.c,
+ src/modules/core/transition_region.c: let mlt_frame_set_alpha clear the
+ get_alpha_mask function pointer
+
+ * src/modules/avformat/producer_avformat.c: fix avformat build on older
+ versions (YUVA444P is new)
+
+2012-02-17 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/avformat/producer_avformat.c: alpha extracting from planar
+ formats
+
+2012-02-16 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/framework/mlt_frame.c: clone alpha on whan cloning image
+
+2012-02-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl_audio.c: prevent audio from stuttering when
+ paused on Windows
+
+ * src/modules/sdl/consumer_sdl_audio.c: rename this to self
+
+ * configure, src/framework/mlt_version.h: set interim version 0.7.9
+
+2012-02-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_luma.c: refactor dissolve_yuv() to use
+ composite_line_yuv()
+
+ * src/modules/core/transition_composite.c,
+ src/modules/core/transition_composite.h: make composite_line_yuv() available
+ to other services
+
+2012-02-16 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/core/transition_composite.c: fix rounding causes by -ffast-math
+
+ * src/modules/core/composite_line_yuv_sse2_simple.c,
+ src/modules/core/transition_composite.c: use sse2 instruction for line
+ compositing
+
+2012-02-13 Dan Dennedy <dan@dennedy.org>
+
+ * ChangeLog: update ChangeLog for v0.7.8
+
+ * Doxyfile, configure, docs/melt.1, src/framework/mlt_version.h,
+ src/melt/melt.c: set version to 0.7.8
+
+ * NEWS: add release notes for v0.7.8
+
+2012-02-12 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/avformat/consumer_avformat.c: Detect video codecs that use the
+ new libavcodec "encode2" method.
+
+2012-02-12 Dan Dennedy <dan@dennedy.org>
+
+ * Makefile, src/modules/core/loader.dict,
+ src/modules/sdl/producer_sdl_image.yml: deprecate sdl_image
+
+ * src/modules/qimage/producer_qimage.c: rename this to self
+
+ * src/modules/gtk2/producer_pixbuf.c: rename this to self
+
+ * src/mlt++/MltFrame.cpp, src/mlt++/MltFrame.h: make Frame::get_position()
+ retrun type consistent
+
+2012-02-12 Simon A. Eugster <simon.eu@gmail.com>
+
+ * src/mlt++/MltFrame.cpp, src/mlt++/MltFrame.h: Add get_position to
+ Mlt::Frame
+
+2012-02-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/transition_vqm.cpp: fix transition vqm build on mingw32
+
+ * src/modules/core/producer_loader.c: support non-explicit abnormal producer
+ usage Non-explicit means the factory was not supplied with a specific
+ service ID but rather an "abnormal:" prefix to the resource value.
+
+2012-01-27 Ryan Rix <ry@n.rix.si>
+
+ * src/modules/qimage/qimage_wrapper.cpp: Patch to build with GCC 4.7 Built
+ and tested downstream in RPMFusion. This addresses some changes in how GCC
+ 4.7 no longer uses unistd by default to keep the global namespace sane.
+
+2012-02-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Ensure thread cleanup upon stop
+ when an error occurs. Also, use event consumer-fatal-error to let melt fail
+ with proper exit status.
+
+2012-02-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/consumer_xml.c: fix possible mem corruption in
+ filter_restricted()
+
+ * src/modules/qimage/transition_vqm.cpp: scale size and position of rendered
+ text with resolution
+
+ * src/modules/qimage/transition_vqm.cpp: add vqm metrics to frame properties
+
+ * src/modules/qimage/transition_vqm.cpp: fix build warning in vqm
+
+ * src/modules/swfdec/configure: fix swfdec/configure appending to config.mak
+
+2012-02-09 Brian Matherly <pez4brian@yahoo.com>
+
+ * Makefile: Exit make with error if any yml validation fails.
+
+2012-02-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/factory.c, src/modules/qimage/transition_vqm.cpp,
+ src/modules/qimage/transition_vqm.yml: add rendering to vqm and yaml service
+ metadata
+
+2012-02-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/Makefile, src/modules/qimage/factory.c,
+ src/modules/qimage/transition_vqm.cpp: add vqm transition
+
+2012-02-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: fix race condition stopping
+ avformat consumer Reported-by: Maksym Veremeyenko
+
+2012-02-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: only automatically set
+ strict=experimental when acodec=aac (3485119)
+
+2012-02-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/filter_avcolour_space.c,
+ src/modules/avformat/producer_avformat.c: fix color problem with libav
+ (3483629)
+
+2012-02-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/filter_avdeinterlace.c: fix crash on private symbol
+ when mmx disabled on libav 0.8 (3483629)
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: fix AVOption processing on ffmpeg
+ 0.8
+
+ * src/modules/avformat/consumer_avformat.c: add null pointer check on return
+ from mlt_frame_get_audio
+
+ * src/modules/core/producer_consumer.c: initialize audio_position so first
+ call to get_audio works
+
+2012-02-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: fix getting sample_fmt name
+ crashing on some versions when av_get_sample_fmt_name exists but not
+ avcodec_get_sample_fmt_name
+
+2012-01-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: fix AVOption processing on libav
+ 0.7.3 Patch for consumer by j-b-m and extended to producer by me.
+
+2012-01-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: fix build on ffmpeg 0.6
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/filter_avresample.c,
+ src/modules/avformat/producer_avformat.c: fix SAMPLE_FMT support for v0.6 and
+ less of libav/ffmpeg
+
+ * src/modules/avformat/filter_avresample.c,
+ src/modules/avformat/producer_avformat.c: convert all SAMPLE_FMT_16 to
+ AV_SAMPLE_FMT_16
+
+ * src/modules/xml/consumer_xml.c: fix invalid free when making absolute path
+ relative Patch by j-b-m and reformatted by me.
+
+ * src/modules/xml/consumer_xml.c: fix string allocation length
+
+ * src/framework/mlt_service.c: correct documentation of
+ mlt_service_disconnect
+
+2012-01-22 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/xml/producer_xml.c: Print useful information for xml parse
+ errors and warnings. Skip second pass if first pass fails.
+
+2012-01-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: increase sample format support to
+ audio encoding This also fixes the latest aac encoder, which accepts
+ interleaved float input only.
+
+ * src/modules/core/filter_audiochannels.c,
+ src/modules/core/filter_channelcopy.c, src/modules/core/filter_mono.c: add
+ s32le and f32le format to core audio filters
+
+ * src/framework/mlt_types.h, src/modules/core/filter_audioconvert.c: add
+ support for converting between all audio sample formats
+
+2012-01-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: default to strict=experimental
+ for painless aac encoding
+
+2012-01-23 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/xml/producer_xml.c: Convert producer_xml.c to use
+ mlt_log_warning()
+
+2012-01-22 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/xml/producer_xml.c: Print useful information for xml parse
+ errors.
+
+2012-01-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/consumer_xml.c: remove old 8-bit only version of xml char
+ filter
+
+2012-01-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/consumer_xml.c: switch to working wchar version of xml char
+ filter I want to ensure this works on more platforms before removing the
+ non-
+
+ * src/modules/xml/consumer_xml.c: quick fix for xml containing bad characters
+ Per the XML standard only the following characters are permitted: Char
+ ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] |
+ [#x10000-#x10FFFF] /* any Unicode character, excluding the surrogate
+ blocks, FFFE, and FFFF. */ This fix does not properly handle the ranges for
+ multi-byte characters, but it does remove the invalid single-byte "control
+ characters."
+
+2012-01-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.c: remove global avformat mutex and
+ add a local one to the producer for open/close coherency
+
+2012-01-17 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c: fixed bug when resizing in
+ consumer
+
+2012-01-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_producer.h, src/framework/mlt_service.h: update doc on
+ service-change and producer-changed events
+
+ * src/framework/mlt_service.c: fix property-changed becoming a
+ service-changed event (kdenlive-2468)
+
+2012-01-19 j-b-m <jb@kdenlive.org>
+
+ * src/modules/kdenlive/filter_freeze.c: fix freeze filter not retrieving
+ image of frame not within in-out
+
+2012-01-18 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/avformat/factory.c: Add use of av_lockmgr_register in addition
+ to the existing mutex for avformat services.
+
+2012-01-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pango.yml, src/modules/gtk2/producer_pixbuf.yml:
+ document force_aspect_ratio on pango and pixbuf producers
+
+2012-01-14 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/gtk2/producer_pango.c: fix pango's producer force_aspect_ratio
+ property handling
+
+ * docs/mlt-xml.txt: fix tag closing
+
+2012-01-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: fix segfault accessing possible
+ null frame (only when real_time > 0?) Patch-by: Maksym Veremeyenko
+
+2012-01-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: enable codec- and format-specific
+ options for v0.7 releases of ffmpeg (but not libav, which uses v53 of
+ libavformat and libavcodec in its 0.7 releases)
+
+2012-01-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.c: drop deprecated APIs of
+ libavformat/codec v53
+
+ * src/modules/core/producer_melt.c: fix melt parsing URL with query string
+ when not followed by -consumer, -profile, or -serialise
+
+2012-01-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/Makefile: fix typo in previous fix for jackrack on
+ Fedora 16 (3468312)
+
+ * src/modules/jackrack/Makefile: fix segfault loading jackrack on Fedora 16
+ (3468312)
+
+2012-01-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/videostab/Makefile: fix videostab sse2 build cont'd
+
+2012-01-02 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab.c,
+ src/modules/videostab/stab/resample.c, src/modules/videostab/stab/resample.h,
+ src/modules/videostab/stab/utils.c, src/modules/videostab/stab/utils.h: do
+ not use lanc_kernels as global var. moved to filter struct
+
+2012-01-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/videostab/Makefile: fix videostab build with sse2
+
+2011-12-28 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/transform_image.c: fixed wrong parameter order
+
+2011-12-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/factory.c: call avformat_network_init()
+
+2011-12-22 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/transform_image.c: use interpolation type from filter
+ also in rgb
+
+ * src/modules/videostab/filter_videostab.c: fixed wrong image format
+
+2011-12-16 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c,
+ src/modules/videostab/stabilize.c, src/modules/videostab/stabilize.h,
+ src/modules/videostab/transform_image.c,
+ src/modules/videostab/transform_image.h: use calloc insteadt of malloc/memset
+ use struct for instance data small cleanup use PIX(n) dont use instable
+ yuv420 use stabilize on grayimage (converted from yuv422)
+
+2011-11-21 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/stabilize.c, src/modules/videostab/transform_image.c:
+ sse2 updates
+
+2011-12-16 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab.c: image format error fix
+
+2011-12-15 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c: fixed bug, resulting in crash at
+ end and wrong first image
+
+2011-12-22 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/transform_image.c: use interpolation type from filter
+ also in rgb
+
+2011-12-21 Dan Dennedy <dan@dennedy.org>
+
+ * configure, src/mlt++/configure: add configure support for GNU Hurd Patches
+ provided by Patrick Matthäi.
+
+ * src/modules/rtaudio/RtAudio.cpp, src/modules/rtaudio/configure: only build
+ rtaudio for Linux, Windows, or OS X
+
+ * src/framework/Makefile, src/framework/configure,
+ src/framework/mlt_property.h: add support for xlocale.h on FreeBSD with
+ assistance from Gleb Smirnoff
+
+2011-12-22 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab.c: fixed wrong image format
+
+2011-12-16 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c,
+ src/modules/videostab/stabilize.c, src/modules/videostab/stabilize.h,
+ src/modules/videostab/transform_image.c,
+ src/modules/videostab/transform_image.h: use calloc insteadt of malloc/memset
+ use struct for instance data small cleanup use PIX(n) dont use instable
+ yuv420 use stabilize on grayimage (converted from yuv422)
+
+2011-12-18 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/factory.c: fix memory leaks in jackrack/ladspa
+ registration
+
+ * src/modules/jackrack/plugin_mgr.c: fix crash at process exit on ladspa
+ plugins (3458967)
+
+ * src/modules/core/producer_noise.c: fix producer noise indicating its audio
+ format
+
+2011-11-21 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/stabilize.c, src/modules/videostab/transform_image.c:
+ sse2 updates
+
+2011-12-16 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab.c: image format error fix
+
+2011-12-15 gmarco <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c: fixed bug, resulting in crash at
+ end and wrong first image
+
+2011-12-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_consumer.c: fix infinite loop regression with
+ consumer producer on xml (3458967)
+
+2011-12-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/producer_xml.c: add trimming whitespace to some xml values
+ (debian-651604)
+
+ * src/modules/xml/producer_xml.c: stop using this for a variable name
+
+ * src/modules/xml/producer_xml.c: fix crash when fail to load filter or
+ transition (debian-651604)
+
+2011-12-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_colour.c, src/modules/core/producer_noise.c,
+ src/modules/dv/producer_libdv.c, src/modules/frei0r/producer_frei0r.c,
+ src/modules/gtk2/producer_pango.c, src/modules/gtk2/producer_pixbuf.c,
+ src/modules/qimage/producer_qimage.c, src/modules/sdl/producer_sdl_image.c:
+ add mlt_image_none support to producers
+
+ * src/modules/avformat/producer_avformat.c: if requested image format is
+ none, pick the most suitable mlt format
+
+ * src/framework/mlt_frame.c: do not try to convert image or audio if
+ requested format is none
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h: add consumer
+ properties mlt_image_format and mlt_audio_format
+
+2011-12-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/filter_fieldorder.c,
+ src/modules/core/filter_fieldorder.yml: add meta.swap_fields to the
+ fieldorder filter
+
+2011-12-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/Makefile, src/modules/core/factory.c,
+ src/modules/core/filter_fieldorder.c, src/modules/core/filter_fieldorder.yml,
+ src/modules/core/filter_resize.c, src/modules/core/filter_resize.yml,
+ src/modules/core/loader.ini: refactor field order correction into new filter
+
+2011-12-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/rtaudio/consumer_rtaudio.yml: add metadata yaml for rtaudio
+ consumer
+
+ * src/modules/rtaudio/RtAudio.cpp, src/modules/rtaudio/RtAudio.h,
+ src/modules/rtaudio/consumer_rtaudio.cpp: improve selecting rtaudio device by
+ name
+
+2011-12-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/rtaudio/RtAudio.cpp: fix multiple rtaudio consumers on OSX
+
+ * src/modules/rtaudio/consumer_rtaudio.cpp: fix setting playing member var in
+ rtaudio
+
+2011-12-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/rtaudio/RtAudio.cpp: revert ALSA default PCM
+
+ * src/modules/rtaudio/RtAudio.cpp: fix rtaudio on mingw
+
+2011-11-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/rtaudio/Makefile, src/modules/rtaudio/RtAudio.cpp,
+ src/modules/rtaudio/RtAudio.h, src/modules/rtaudio/RtError.h,
+ src/modules/rtaudio/consumer_rtaudio.cpp: add rtaudio consumer
+
+ * src/modules/core/consumer_multi.c: support consumers that use constructor
+ arg instead of target property
+
+ * src/modules/core/consumer_multi.c: drain nested consumers of multi consumer
+
+ * src/modules/core/consumer_multi.c: fix stopping in multi consumer
+
+2011-11-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c, src/modules/avformat/vdpau.c: fix
+ VDPAU state issues Patch by Christophe Thommeret
+
+2011-11-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: fix decklink compile on mingw
+
+2011-11-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/plugin_mgr.c: fix attempt to construct LADSPA plugin
+ with no _init.
+
+ * src/modules/jackrack/plugin_mgr.c: fix loading LADSPA plugins with broken
+ constructor
+
+2011-11-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_factory.c, src/modules/frei0r/factory.c,
+ src/modules/jackrack/plugin_mgr.c: fix frei0r and ladspa loading for
+ relocatable builds
+
+2011-11-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/consumer_multi.c: default multi consumer to real_time=-1
+ This defaults command line and XML usage most suitable for use with avformat
+ consumer. We still need a way to change multi consumer properties when using
+ more than one -consumer with melt.
+
+2011-11-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_consumer.c: let 'mlt_profile' be a synonym for
+ 'profile' to be consistent with consumer property name for setting profile
+
+ * src/modules/core/consumer_multi.yml: add YAML metadata for multi consumer
+
+ * src/modules/videostab/filter_videostab2.yml: fix parameter type on
+ videostab2 yaml
+
+ * src/modules/core/producer_consumer.yml: document profile=auto for producer
+ consumer
+
+ * src/modules/core/filter_resize.c: fix video glitch seen with multi consumer
+
+ * src/modules/core/consumer_multi.c: add framerate adaption to multi consumer
+
+ * src/framework/mlt_frame.c: make deep mlt_frame_clone more robust
+
+ * src/melt/melt.c: fix using a preset with multi consumer and avformat:file
+
+2011-11-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/producer_xml.c: add support for more than one consumer
+ element in xml
+
+ * src/melt/melt.c, src/modules/core/consumer_multi.c: change property
+ 'consumer' to 'mlt_service' consistent with xml
+
+ * src/melt/melt.c: fix using multi consumer only when more than one -consumer
+ arg
+
+ * src/melt/melt.c: add support for multiple -consumer arguments
+
+ * src/modules/core/consumer_multi.c: add support for app-supplied properties
+ objects on multi consumer
+
+ * src/modules/decklink/producer_decklink.cpp: use mlt_frame_clone() instead
+ of local method
+
+ * src/framework/mlt_frame.c, src/framework/mlt_frame.h,
+ src/modules/core/consumer_multi.c: enhance mlt_frame_clone with a
+ deep/shallow parameter
+
+ * src/modules/decklink/producer_decklink.cpp: add caching to decklink
+ producer Now it supports YADIF deinterlace and framerate conversion.
+
+2011-11-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_consumer.c: add framerate adaption to consumer
+ producer
+
+2011-11-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: change a decklink log message
+ to debug level
+
+ * src/modules/core/consumer_multi.c: make sure nested consumer gets
+ mlt_profile before 'properties' preset
+
+ * src/framework/mlt_property.c: fix passing property that has both numeric
+ and string types
+
+ * src/modules/avformat/producer_avformat.c: fix possible source_fps
+ inconsistency
+
+2011-11-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/consumer_multi.c: use multi consumer properties if no
+ resource supplied
+
+ * src/modules/core/consumer_multi.c: implement multi consumer
+
+ * src/framework/mlt_producer.c: fix brief description of mlt_producer_clone()
+
+ * src/framework/mlt_frame.c, src/framework/mlt_frame.h: add mlt_frame_clone()
+
+ * src/modules/sdl/consumer_sdl_preview.c: fix crash in sdl_preview with multi
+ consumer
+
+ * src/modules/decklink/consumer_decklink.cpp: fix crash in decklink
+ mlt_consumer_stop()
+
+ * src/modules/decklink/consumer_decklink.cpp: Make decklink
+ mlt_consumer_start more asynchronous. This puts preroll into a thread to
+ make it more asynchronous - a problem noticed with multi consumer.
+
+2011-11-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/Makefile, src/modules/core/consumer_multi.c,
+ src/modules/core/consumer_multi.yml, src/modules/core/factory.c: add multi
+ consumer (non-functional)
+
+2011-11-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: improve support for 480 line
+ NTSC in decklink consumer
+
+ * profiles/sdi_486i_5994, profiles/sdi_486p_2398,
+ src/modules/linsys/consumer_SDIstream.c, src/modules/linsys/sdi_generator.c,
+ src/modules/linsys/sdi_generator.h: improve support for 486 line NTSC in
+ linsys sdi consumer
+
+2011-11-11 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/oldfilm/filter_vignette.c: avoid segfault when smooth=0
+
+2011-11-09 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/oldfilm/filter_vignette.yml: added description for vignette
+ change
+
+ * src/modules/oldfilm/filter_vignette.c: use linear or cos for blending
+
+2011-11-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_types.h: fix PATH_MAX undefined
+
+2011-11-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/kdenlive/producer_framebuffer.c: Fix framebuffer producer
+ aspect ratio (kdenlive-2372)
+
+ * configure, src/framework/mlt_version.h: set interim version 0.7.7
+
+ * src/modules/avformat/vdpau.c, src/modules/videostab/stab/estimate.c: build
+ fixes for FreeBSD patches by Alberto Villa
+
+2011-10-31 Dan Dennedy <dan@dennedy.org>
+
+ * ChangeLog: update changelog for v0.7.6
+
+ * Doxyfile, configure, docs/melt.1, src/framework/mlt_version.h: set version
+ to 0.7.6
+
+ * NEWS: add release notes for v0.7.6
+
+2011-10-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/videostab/filter_videostab.c,
+ src/modules/videostab/filter_videostab2.c: Request progressive scan images
+ when stabilizing video.
+
+ * presets/filter/brightness/from_black, presets/filter/brightness/to_black,
+ presets/filter/volume/fade_in, presets/filter/volume/fade_out: add fade
+ in/out presets When using to_black and fade_out, currently you need to
+ adjust in and out properties as needed because we cannot yet use negative
+ values to mean "from end."
+
+ * src/modules/jackrack/plugin_mgr.c: reduce log level of some LADSPA-related
+ exceptions
+
+2011-09-21 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.yml: updated desc
+
+2011-09-20 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.yml: added description
+
+ * src/modules/videostab/filter_videostab2.c,
+ src/modules/videostab/transform_image.c,
+ src/modules/videostab/transform_image.h: set transform properties from mlt
+
+ * src/modules/videostab/filter_videostab2.c: read filter params correct, set
+ interpol type
+
+2011-09-19 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c,
+ src/modules/videostab/transform_image.c: use interpolation settings
+
+ * src/modules/videostab/stabilize.c: log format error on draw*
+
+ * src/modules/videostab/filter_videostab2.yml: added yml for videostab2
+
+2011-09-11 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/stabilize.c, src/modules/videostab/transform_image.c:
+ move printf -> mlt_log*
+
+ * src/modules/videostab/filter_videostab2.c,
+ src/modules/videostab/stabilize.c: set all paramters
+
+ * src/modules/videostab/filter_videostab2.c,
+ src/modules/videostab/stabilize.c, src/modules/videostab/stabilize.h,
+ src/modules/videostab/transform_image.c,
+ src/modules/videostab/transform_image.h: avoid unreadable code like
+ (*format==mlt_image_rgb24?0:1) use mlt_types and names for it
+
+ * src/modules/videostab/filter_videostab2.c: remove log since no parent/type
+ yet
+
+ * src/modules/videostab/filter_videostab2.c: removed unsued code (point 4 )
+
+ * src/modules/videostab/filter_videostab2.c: removed printf from mlt filter
+ code (point 9)
+
+ * src/modules/videostab/filter_videostab2.c: use mlt_pool_release instead of
+ mlt_properties_close (point 8)
+
+ * src/modules/videostab/filter_videostab2.c: do not call stabilize_init()
+ anymore (point 7) thx to Dan D.
+
+ * src/modules/videostab/Makefile: fix makefile to respect global FLAGS (point
+ 2)
+
+2011-09-02 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab2.c: framesize 3/2 * w * h seems to
+ bee too small for yuv420 (segfault in filter)
+
+2011-08-19 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/Makefile, src/modules/videostab/factory.c,
+ src/modules/videostab/filter_videostab2.c, src/modules/videostab/stabilize.c,
+ src/modules/videostab/stabilize.h, src/modules/videostab/tlist.c,
+ src/modules/videostab/tlist.h, src/modules/videostab/transform.c,
+ src/modules/videostab/transform.h, src/modules/videostab/transform_image.c,
+ src/modules/videostab/transform_image.h: added vstab from
+ http://public.hronopik.de/vid.stab/features.php?lang=en handles yuv, has zoom
+ (to avoid the interpolated borders), and seems to be stabilize a bit better
+
+2011-10-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pango.yml: remove invalid metadata item for pango
+
+ * src/modules/core/producer_consumer.c,
+ src/modules/core/producer_consumer.yml: add autoprofile property to consumer
+ producer
+
+ * src/modules/decklink/producer_decklink.cpp: log profile info when profile
+ not compatible with decklink mode
+
+ * src/modules/avformat/producer_avformat.c: fix crash cleaning packet queues
+ that were not created
+
+ * src/framework/mlt_log.c: change default log level to WARN
+
+2011-10-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Let video_delay work with
+ new_seek (AVCHD).
+
+ * src/modules/avformat/producer_avformat.c: Renove start_time from avformat
+ producer core object.
+
+2011-10-16 Brian Matherly <pez4brian@yahoo.com>
+
+ * demo/mlt_voiceover, demo/pango.mlt, src/modules/core/data_fx.properties,
+ src/modules/feeds/NTSC/data_fx.properties,
+ src/modules/feeds/NTSC/etv.properties,
+ src/modules/feeds/PAL/data_fx.properties,
+ src/modules/feeds/PAL/etv.properties, src/modules/gtk2/filter_dynamictext.c,
+ src/modules/gtk2/filter_dynamictext.yml, src/modules/gtk2/producer_pango.c,
+ src/modules/gtk2/producer_pango.yml, src/tests/pango.c: Add "family" and
+ "style" properties to pango producer. Deprecate "font" property.
+
+2011-10-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Improve a/v sync and fix possible
+ inf loop w/ audio_index=all Sometimes it would ignore the next packet that
+ falls on the current frame time - ignore was too agressive. And with
+ audio_index=all, it is faulty to predict interleaving level of streams
+ sometimes causing continual backward seeks.
+
+2011-10-11 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/decklink/producer_decklink.yml, src/modules/sox/filter_sox.yml:
+ yml validation fixes
+
+ * src/modules/gtk2/filter_dynamictext.c,
+ src/modules/gtk2/filter_dynamictext.yml, src/modules/gtk2/producer_pango.c,
+ src/modules/gtk2/producer_pango.yml: Add outline to pango and dynamic text
+ services. Add pad and align to dynamic text.
+
+2011-10-08 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/gtk2/filter_dynamictext.c: dynamic text fixes: buffer overflows
+ an support adjacent keywords.
+
+2011-10-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/melt/melt.c: Add -progress2 option to get progress with newlines.
+ Makes easier to get progress updates in some scripts.
+
+2011-10-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix regression on audio devices.
+
+2011-10-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Improve previous fix (efebb3) to
+ prevent infinite loop.
+
+ * src/modules/avformat/producer_avformat.c: Prevent closing alreadu closed
+ AVCoddecContexts. Patch supplied by Mikko Rapeli.
+
+2011-10-03 j-b-m <jb@kdenlive.org>
+
+ * src/modules/kdenlive/producer_framebuffer.c: Fix framebuffer producer in
+ property (3417991)
+
+2011-10-02 Brian Matherly <pez4brian@yahoo.com>
+
+ * README, docs/TODO, docs/policies.txt, docs/services.txt: Remove docs/TODO,
+ docs/policies.txt, docs/services/txt. All that information is now available
+ on the web site.
+
+2011-10-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/melt/melt.c, src/modules/core/producer_melt.c,
+ src/modules/xml/mlt-xml.dtd, src/modules/xml/producer_xml.c: Add consumer
+ element to xml producer.
+
+2011-09-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/filter_sox.c: Fix segfault in sox with no effect.
+
+2011-09-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix race on stream index
+ (kdenlive-2296)
+
+ * src/modules/avformat/producer_avformat.c: Fix crash when codec not yet
+ opened (or just closed?)
+
+ * src/modules/avformat/producer_avformat.c: Fix some unprotected calls to
+ av_close_input_file.
+
+2011-09-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Add re-open capability to
+ decklink producer. This causes the producer to automatically close itself
+ when it reaches the "end" as defined by an out or length property. Then, the
+ same producer can be re-opened if reused elsewhere in a playlist or another
+ instance of the decklink producer can use the same card. This requires that
+ the decklink producer be permitted to play out to its duration.
+
+2011-09-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Fix multi-threaded encoding on
+ libavcodec older than v53.
+
+2011-09-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_profile.c: Fix regression loading profile. Also, prefer
+ mlt_environment(MLT_DATA) over $datadir to make indirection possible with
+ MLT_DATA environment variable and to be consistent with mlt_profile_list().
+
+ * src/framework/mlt_profile.c: Fix regression loading profile. Also, prefer
+ mlt_environment(MLT_DATA) over $datadir to make indirection possible with
+ MLT_DATA environment variable and to be consistent with mlt_profile_list().
+
+2011-09-25 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/gtk2/filter_dynamictext.yml, src/modules/gtk2/producer_pango.c,
+ src/modules/gtk2/producer_pango.yml: Add support for HTML style color
+ parameter to producer_pango. producer_color and producer_pango now work
+ exactly the same WRT color parameters.
+
+2011-09-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/frei0r/factory.c, src/modules/jackrack/plugin_mgr.c: Load
+ frei0r and ladspa plugins relative to exe on win32
+
+ * src/modules/videostab/stab/estimate.c: Fix videostab build on win32
+
+ * src/framework/Makefile, src/framework/mlt_factory.c,
+ src/framework/mlt_profile.c: Fix build on win32
+
+ * src/modules/avformat/consumer_avformat.c: Add parenthesis to fix warning.
+
+ * src/framework/mlt_profile.c, src/framework/mlt_properties.c,
+ src/framework/mlt_repository.c: Fix and cleanup profile and preset dirs.
+
+ * src/framework/Makefile, src/framework/mlt_factory.c,
+ src/framework/mlt_profile.c: Fix loading profile from datadir.
+
+ * src/modules/frei0r/factory.c, src/modules/jackrack/plugin_mgr.c: Add
+ relative frei0r and LADSPA dirs for relocatable.
+
+2011-09-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_profile.c, src/framework/mlt_repository.c: Make profiles
+ relative to MLT_DATA instead of $prefix/share/mlt
+
+2011-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_factory.c: Make modules and data relative to executable
+ for win32 and osx. Requires RELOCATABLE to be defined for osx.
+
+2011-09-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/producer_decklink.cpp: Fix building decklink on win32
+
+2011-09-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Fix executing stop when not
+ started (and vice versa).
+
+2011-09-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/linsys/consumer_SDIstream.c: Fix audio_index=all with linsys
+ SDI consumer.
+
+ * src/modules/core/filter_audiochannels.c: Fix uninitialized var in
+ audiochannels filter.
+
+2011-09-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl_audio.c: Fix intermittent crash when closing
+ sdl_audio.
+
+2011-09-22 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/stab/estimate.c: fix to compile an MAC (point 1)
+
+2011-09-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_geometry.c: Serialize geometry with %g instead of my own
+ macros.
+
+2011-09-20 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/Sony-PSP: Add Sony PlayStation Portable encode
+ preset
+
+ * presets/consumer/avformat/XDCAM-HD422,
+ presets/consumer/avformat/atsc_1080i_50/DNxHD,
+ presets/consumer/avformat/atsc_1080i_5994/DNxHD,
+ presets/consumer/avformat/atsc_1080p_2398/DNxHD,
+ presets/consumer/avformat/atsc_1080p_24/DNxHD,
+ presets/consumer/avformat/atsc_1080p_25/DNxHD,
+ presets/consumer/avformat/atsc_1080p_2997/DNxHD,
+ presets/consumer/avformat/atsc_1080p_30/DNxHD,
+ presets/consumer/avformat/atsc_1080p_50/DNxHD,
+ presets/consumer/avformat/atsc_1080p_5994/DNxHD,
+ presets/consumer/avformat/atsc_1080p_60/DNxHD,
+ presets/consumer/avformat/atsc_720p_2398/DNxHD,
+ presets/consumer/avformat/atsc_720p_50/DNxHD,
+ presets/consumer/avformat/atsc_720p_5994/DNxHD,
+ presets/consumer/avformat/atsc_720p_60/DNxHD,
+ presets/consumer/avformat/dv_ntsc/D10, presets/consumer/avformat/dv_ntsc/DVD,
+ presets/consumer/avformat/dv_ntsc_wide/D10,
+ presets/consumer/avformat/dv_ntsc_wide/DVD,
+ presets/consumer/avformat/dv_pal/D10, presets/consumer/avformat/dv_pal/DVD,
+ presets/consumer/avformat/dv_pal_wide/D10,
+ presets/consumer/avformat/dv_pal_wide/DVD, presets/consumer/avformat/webm:
+ Fix video bitrate option in presets.
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/consumer_avformat.yml: Support streamtype-specific
+ AVOptions (-vb)
+
+2011-08-28 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/gtk2/Makefile, src/modules/gtk2/factory.c,
+ src/modules/gtk2/filter_dynamictext.c,
+ src/modules/gtk2/filter_dynamictext.yml: Add filter_dynamictext.
+
+2011-09-15 Till Theato <root@ttill.de>
+
+ * src/modules/kdenlive/filter_freeze.c: Freeze filter: Fix alpha handling.
+
+ * src/modules/kdenlive/filter_freeze.c: Freeze filter: Stop using 'this'.
+
+ * src/modules/kdenlive/producer_framebuffer.c: Framebuffer producer: Fix
+ alpha handling (Kdenlive-2311).
+
+2011-09-14 Till Theato <root@ttill.de>
+
+ * src/modules/kdenlive/producer_framebuffer.c: Producer framebuffer: Stop
+ using 'this'.
+
+2011-09-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_factory.c: Always Load the system locales.
+
+2011-09-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/Makefile, src/modules/sox/factory.c,
+ src/modules/sox/filter_sox.yml, src/modules/sox/filter_sox_effect.yml:
+ Document normalise and analysis for sox. This change separates the general
+ sox metadata from effect instance metadata.
+
+ * src/modules/sox/filter_sox.c: Add analysis effect to sox filter. This
+ analyzes the audio to determine a normalized gain level. The result is
+ suitable for XML serialization.
+
+2011-09-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/filter_sox.c: Only compute rms if normalise.
+
+ * src/modules/sox/filter_sox.c: Only compute rms if normalise.
+
+ * src/modules/sox/filter_sox.c: Remove some old cruft in sox.
+
+ * src/framework/mlt_property.c: Fix race conditions in mlt_property.
+
+2011-09-10 j-b-m <jb@kdenlive.org>
+
+ * src/framework/mlt_geometry.c: Skip empty keyframes when parsing geometry.
+
+2011-09-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/Makefile, src/modules/core/factory.c,
+ src/modules/core/producer_melt.c, src/modules/core/producer_melt.yml,
+ src/modules/core/producer_melt_file.yml, src/modules/melt/Makefile,
+ src/modules/melt/factory.c, src/modules/melt/producer_melt.c,
+ src/modules/melt/producer_melt.yml, src/modules/melt/producer_melt_file.yml:
+ Move melt producer to core module.
+
+ * presets/consumer/avformat/atsc_1080i_50/DNxHD,
+ presets/consumer/avformat/atsc_1080i_5994/DNxHD,
+ presets/consumer/avformat/atsc_1080p_2398/DNxHD,
+ presets/consumer/avformat/atsc_1080p_24/DNxHD,
+ presets/consumer/avformat/atsc_1080p_25/DNxHD,
+ presets/consumer/avformat/atsc_1080p_2997/DNxHD,
+ presets/consumer/avformat/atsc_1080p_30/DNxHD,
+ presets/consumer/avformat/atsc_1080p_50/DNxHD,
+ presets/consumer/avformat/atsc_1080p_5994/DNxHD,
+ presets/consumer/avformat/atsc_1080p_60/DNxHD,
+ presets/consumer/avformat/atsc_720p_2398/DNxHD,
+ presets/consumer/avformat/atsc_720p_50/DNxHD,
+ presets/consumer/avformat/atsc_720p_5994/DNxHD,
+ presets/consumer/avformat/atsc_720p_60/DNxHD: Add a bunch of DNxHD encode
+ presets.
+
+ * src/modules/core/transition_composite.c: Fix composite_copy_region on
+ locale using comma for decimal.
+
+2011-09-08 j-b-m <jb@kdenlive.org>
+
+ * src/framework/mlt_property.c: Fix locale corruption. setlocale returns a
+ pointer that is no longer valid after the intermediate call to setlocale.
+
+ * src/modules/qimage/kdenlivetitle_wrapper.cpp: Fix Kdenlive title module
+ breaking locale.
+
+2011-09-06 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/XDCAM-HD422: Add XDCAM HD encode preset.
+
+ * src/framework/mlt_multitrack.c: Fix many tracks with avformat producer at
+ same time (kdenlive-2286).
+
+ * presets/consumer/avformat/XDCAM-HD422: Fix many tracks with avformat
+ producer at same time (kdenlive-2286).
+
+2011-09-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Add support for writing timecode
+ from vitc metadata.
+
+2011-09-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/melt/producer_melt.c, src/modules/xml/producer_xml.c: Change
+ previous mods to use mlt_multitrack_count()
+
+ * src/modules/melt/producer_melt.c, src/modules/xml/producer_xml.c: Fix XML
+ and melt producers producer_avformat cache size. Use track-count + 2 in case
+ a track is using a mixer between playlist items.
+
+ * src/framework/mlt_service.c, src/framework/mlt_service.h: Add
+ mlt_service_cache_get_size()
+
+ * src/framework/mlt_cache.c, src/framework/mlt_cache.h: Add
+ mlt_cache_get_size()
+
+ * src/modules/melt/producer_melt.c: Fix melt crash on many avformat producers
+ active.
+
+ * src/framework/mlt_cache.c: Fix setting the size of a cache up to 200.
+
+2011-09-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp,
+ src/modules/decklink/producer_decklink.yml: Add vanc property to decklink
+ producer. This captures vertical ancillary data during the vertical
+ blanking, which often contains metadata with timecode. This can be used to
+ produce D10/IMX50 captures with VBI.
+
+2011-09-03 j-b-m <jb@kdenlive.org>
+
+ * src/modules/core/transition_region.c,
+ src/modules/core/transition_region.yml: Add filter_only to region transition.
+ YAML patch by Dan Dennedy
+
+2011-09-01 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/dv_ntsc/D10,
+ presets/consumer/avformat/dv_ntsc_wide/D10,
+ presets/consumer/avformat/dv_pal/D10,
+ presets/consumer/avformat/dv_pal_wide/D10: Add SMPTE 356M (aka D-10 and
+ IMX50) encoode presets.
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h,
+ src/framework/mlt_tractor.c, src/framework/mlt_transition.c,
+ src/modules/core/filter_resize.c: Add consumer property top_field_first.
+
+2011-08-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/factory.c, src/modules/sox/filter_sox.c: Use the sox
+ version in metadata and serialization.
+
+ * src/modules/frei0r/factory.c: Serialize the frei0r version.
+
+ * src/modules/xml/consumer_xml.c, src/modules/xml/mlt-xml.dtd: Add MLT
+ version to serialized XML.
+
+ * src/modules/frei0r/factory.c, .../motion_est/filter_autotrack_rectangle.c:
+ Convert some printfs to fprintf(stderr) or mlt_log.
+
+2011-08-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Fix crash at end of second pass.
+
+2011-08-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Copy VITC to frame meta
+ property. Can be burned in with data_show filter. Perhaps this can be stored
+ on the producer property using key frames for discontinuities. Then, it can
+ be retrieved and supplied to some new filter that would put the
+ meta.attr.vitc.markup property on frames.
+
+2011-08-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/factory.c: Fix bad comparison on metadata for 'sox' (not
+ sox.*)
+
+ * src/modules/frei0r/factory.c: Initialize stat buffer.
+
+2011-08-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/consumer_xml.yml: Document serializing xml to property.
+
+ * src/modules/xml/consumer_xml.c, src/modules/xml/consumer_xml.yml: Add
+ no_meta property to xml consumer. Applications that use the consumer for its
+ project file might want to reduce xml bloat by setting this.
+
+ * src/modules/xml/consumer_xml.yml: Document some xml consumer properties.
+
+ * src/modules/jackrack/consumer_jack.c,
+ src/modules/jackrack/filter_jackrack.c, src/modules/jackrack/process.c: Fix
+ segfault on concurrent calls to jack_activate().
+
+2011-08-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/videostab/filter_videostab.c,
+ src/modules/videostab/filter_videostab.yml: Add vectors property to
+ videostab. Change videostab to save to and load from a property instead of
+ file. It uses mlt_geometry for the (de)serialization of the vectors, Also,
+ remove seeking on the producer and require a two pass mode of operation.
+ Finally, make it parallel-safe.
+
+ * src/framework/mlt_geometry.c, src/framework/mlt_geometry.h,
+ src/mlt++/MltGeometry.cpp, src/mlt++/MltGeometry.h,
+ src/modules/core/transition_composite.c, src/modules/gtk2/producer_pango.c,
+ .../motion_est/filter_autotrack_rectangle.c: Add mlt_geometry_interpolate.
+ This removes re-interpolation on each call to mlt_geometry_insert() to make
+ bulk invocations of that call faster. This also makes mlt_geometry_parse()
+ faster. Also, this includes a fix to mlt_geometry_serialise() for a buffer
+ overflow memory corruption.
+
+ * src/modules/xml/Makefile, src/modules/xml/consumer_xml.c,
+ src/modules/xml/consumer_xml.yml: Add 'all' property to xml consumer. Makes
+ the consumer process all frames before serializing to XML.
+
+2011-08-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_geometry.c: Serialize geometry with integer or float
+ representation.
+
+ * src/modules/avformat/filter_avcolour_space.c: Check swscale context before
+ using it. Old patch suggested by j-b-m on Feb 9, 2011.
+
+ * src/modules/videostab/filter_videostab.c: More cleanup.
+
+ * src/modules/videostab/Makefile: Fix make install.
+
+ * src/framework/mlt_filter.c, src/framework/mlt_filter.h,
+ src/mlt++/MltFilter.cpp, src/mlt++/MltFilter.h: Add mlt_filter_get_length2.
+
+2011-08-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/videostab/filter_videostab.c: Some cleanup - reformating,
+ consolidation
+
+ * src/modules/videostab/filter_videostab.c: Stop using 'this'
+
+ * src/modules/videostab/filter_videostab.c: Remove global variables.
+
+ * src/modules/videostab/stab/estimate.c: Fix compile error on MAXFLOAT.
+
+ * src/modules/videostab/filter_videostab.c: Fix for GPL license.
+
+2011-08-12 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/factory.c,
+ src/modules/videostab/filter_videostab.yml: added yml metadata
+
+ * src/modules/videostab/filter_videostab.c: removed comments
+
+ * src/modules/videostab/filter_videostab.c: some cleanup, loading from
+ deshake file works now (if correct) for my sample (45 frames) the filter will
+ do 2 runs, first with 37 , second with 45 frames. so the resut will look like
+ not working. correct length deshake file will work.
+
+2011-08-11 Marco Gittler <g.marco@freenet.de>
+
+ * src/modules/videostab/filter_videostab.c: some vars are now local instead
+ of global. storing pos_h now works, but loading pos_h from file does not
+ produce the same result.
+
+ * src/modules/videostab/factory.c, src/modules/videostab/filter_videostab.c:
+ compile fix
+
+ * src/modules/videostab/Makefile, src/modules/videostab/factory.c,
+ src/modules/videostab/filter_videostab.c,
+ src/modules/videostab/stab/estimate.c, src/modules/videostab/stab/estimate.h,
+ src/modules/videostab/stab/klt/base.h,
+ src/modules/videostab/stab/klt/convolve.c,
+ src/modules/videostab/stab/klt/convolve.h,
+ src/modules/videostab/stab/klt/error.c,
+ src/modules/videostab/stab/klt/error.h, src/modules/videostab/stab/klt/klt.c,
+ src/modules/videostab/stab/klt/klt.h,
+ src/modules/videostab/stab/klt/klt_util.c,
+ src/modules/videostab/stab/klt/klt_util.h,
+ src/modules/videostab/stab/klt/pyramid.c,
+ src/modules/videostab/stab/klt/pyramid.h,
+ .../videostab/stab/klt/selectGoodFeatures.c,
+ src/modules/videostab/stab/klt/trackFeatures.c,
+ src/modules/videostab/stab/main.c, src/modules/videostab/stab/resample.c,
+ src/modules/videostab/stab/resample.h, src/modules/videostab/stab/utils.c,
+ src/modules/videostab/stab/utils.h, src/modules/videostab/stab/vector.c,
+ src/modules/videostab/stab/vector.h: first version of video stabilization
+ from http://vstab.sourceforge.net/
+
+2011-08-09 Till Theato <root@ttill.de>
+
+ * src/modules/jackrack/factory.c: Fix regression with ladspa metadata.
+
+2011-08-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/consumer_jack.c: Use JACK to lookup default ports.
+
+2011-08-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/Makefile, src/modules/jackrack/configure,
+ src/modules/jackrack/consumer_jack.c, src/modules/jackrack/factory.c: Make
+ jack consumer LGPLv2.1 license. This change allows the module to be built in
+ either GPL or LGPL mode where GPL mode also adds the jackrack and ladspa
+ filters.
+
+ * src/modules/jackrack/Makefile, src/modules/jackrack/consumer_jack.yml: Add
+ service metadata for jack consumer.
+
+ * src/modules/jackrack/consumer_jack.c: Add volume property to jack consumer.
+
+ * src/modules/jackrack/filter_jackrack.c: Fail gracefully when unable to
+ connect to JACK.
+
+ * src/modules/jackrack/Makefile, src/modules/jackrack/consumer_jack.c,
+ src/modules/jackrack/factory.c: Add audio-only JACK consumer. Fires
+ consumer-frame-show for video frames.
+
+2011-08-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Fix regression in multiple audio
+ tracks. Regresssion introduced with audiochannels normalization filter.
+
+2011-07-28 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/decklink/consumer_decklink.cpp: Make scheduling priority of
+ decklink lib thread adjustable. Uses existing mlt_consumer priority
+ property, but also responds to special "max" and "min" values.
+
+2011-07-26 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/core/transition_composite.yml: Mark composite transition
+ metadata properties that are deprecated as such.
+
+ * src/melt/melt.c: Filter service metadata from being displayed if it is
+ tagged as "Hidden".
+
+2011-07-24 Brian Matherly <pez4brian@yahoo.com>
+
+ * Makefile, src/modules/avformat/consumer_avformat.yml,
+ src/modules/avformat/producer_avformat.yml, src/modules/core/factory.c,
+ src/modules/core/filter_channelcopy.yml, src/modules/core/filter_gamma.yml,
+ src/modules/core/filter_luma.yml, src/modules/core/filter_region.yml,
+ src/modules/core/filter_rescale.yml, src/modules/core/filter_resize.yml,
+ src/modules/core/producer_loader.yml,
+ src/modules/core/transition_composite.yml,
+ src/modules/core/transition_luma.yml, src/modules/dv/producer_libdv.yml,
+ src/modules/gtk2/factory.c, src/modules/gtk2/filter_rescale.yml,
+ src/modules/gtk2/producer_pango.yml, src/modules/kdenlive/filter_boxblur.yml,
+ src/modules/resample/Makefile, src/modules/resample/factory.c,
+ src/modules/resample/filter_resample.yml: Add service metadata for composite
+ transition, all normalizing filters (resample, resize, rescale), and the
+ loader producer. Add yml validation rule to Makefile. All yml files pass
+ validation against metaschema.yaml.
+
+2011-07-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.yml: Document the redirect property.
+
+ * src/modules/avformat/consumer_avformat.c: Remove mlt protocol, use
+ ByteIOContext if <v53 libavformat.
+
+2011-07-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Add support for custom
+ AVIOContext. New versions of ffmpeg drop ability to register a protocol.
+
+2011-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/swig/Makefile: Add empty uninstall target to swig Makefile.
+
+ * src/modules/core/filter_mirror.yml, src/modules/core/filter_mono.yml,
+ src/modules/core/filter_obscure.yml, src/modules/core/filter_region.yml,
+ src/modules/core/transition_luma.yml, src/modules/core/transition_mix.yml,
+ src/modules/core/transition_region.yml, src/modules/dv/consumer_libdv.yml,
+ src/modules/normalize/filter_volume.yml, src/modules/sdl/consumer_sdl.yml,
+ src/modules/xml/consumer_xml.yml: Cleanup Brian's service metadata
+ contribution.
+
+ * src/modules/decklink/consumer_decklink.cpp: Touchup spacing in decklink
+ consumer.
+
+2011-07-22 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/decklink/consumer_decklink.cpp: Log when decklink audio buffer
+ level changes. Very useful to understand when unexpected behavior happens.
+
+ * src/modules/decklink/consumer_decklink.cpp: Prevent decklink audio buffer
+ overflow. Flush audio buffer if it more then preroll configured length.
+
+ * src/modules/decklink/consumer_decklink.cpp: Notify dropped frame in
+ decklink. i.e. status *bmdOutputFrameDropped*
+
+ * src/modules/decklink/consumer_decklink.cpp: Avoid float rounding error when
+ calculating audio timestamp.
+
+2011-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.c: Make ffmpeg v53-specific code more
+ readable and searchable.
+
+ * src/modules/avformat/consumer_avformat.c: Fix codec-specific defaults for
+ libavcodec v53 (3370720).
+
+ * src/modules/avformat/consumer_avformat.c: Refactor to pass AVCodec into
+ add_audio/video_stream.
+
+ * configure, src/framework/mlt_version.h: set interim version 0.7.5
+
+ * src/framework/mlt_property.c, src/framework/mlt_property.h: Fix build on
+ Debian kfreebsd.
+
+2011-07-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.h: Document the priority property.
+
+2011-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: Touchup spacing in decklink
+ consumer.
+
+2011-07-22 Maksym Veremeyenko <verem@m1stereo.tv>
+
+ * src/modules/decklink/consumer_decklink.cpp: Log when decklink audio buffer
+ level changes. Very useful to understand when unexpected behavior happens.
+
+ * src/modules/decklink/consumer_decklink.cpp: Prevent decklink audio buffer
+ overflow. Flush audio buffer if it more then preroll configured length.
+
+ * src/modules/decklink/consumer_decklink.cpp: Notify dropped frame in
+ decklink. i.e. status *bmdOutputFrameDropped*
+
+ * src/modules/decklink/consumer_decklink.cpp: Avoid float rounding error when
+ calculating audio timestamp.
+
+2011-07-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.c: Make ffmpeg v53-specific code more
+ readable and searchable.
+
+ * src/modules/avformat/consumer_avformat.c: Fix codec-specific defaults for
+ libavcodec v53 (3370720).
+
+ * src/modules/avformat/consumer_avformat.c: Refactor to pass AVCodec into
+ add_audio/video_stream.
+
+ * configure, src/framework/mlt_version.h: set interim version 0.7.5
+
+ * src/framework/mlt_property.c, src/framework/mlt_property.h: Fix build on
+ Debian kfreebsd.
+
+2011-07-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.h: Document the priority property.
+
+2011-07-19 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/core/filter_mirror.yml, src/modules/core/filter_mono.yml,
+ src/modules/core/filter_obscure.yml, src/modules/core/filter_region.yml,
+ src/modules/core/transition_luma.yml, src/modules/core/transition_mix.yml,
+ src/modules/core/transition_region.yml, src/modules/dv/consumer_libdv.yml,
+ src/modules/jackrack/filter_ladspa.yml,
+ src/modules/normalize/filter_volume.yml, src/modules/sdl/consumer_sdl.yml,
+ src/modules/xml/consumer_xml.yml: Transcribe service metadata from
+ services.txt to corresponding yml files.
+
+2011-07-17 Brian Matherly <pez4brian@yahoo.com>
+
+ * src/modules/avformat/consumer_avformat.yml,
+ src/modules/avformat/producer_avformat.yml,
+ src/modules/core/filter_data_show.yml, src/modules/core/filter_watermark.yml,
+ src/modules/core/producer_noise.yml,
+ src/modules/decklink/producer_decklink.yml,
+ src/modules/dv/producer_libdv.yml, src/modules/gtk2/producer_pango.yml,
+ src/modules/gtk2/producer_pixbuf.yml, src/modules/vorbis/producer_vorbis.yml,
+ src/modules/xml/producer_xml.yml: Remove from all existing yml: in, out,
+ length, resource, and aspect_ratio.
+
+2011-07-16 Dan Dennedy <dan@dennedy.org>
+
+ * ChangeLog: Update ChangeLog for v0.7.4
+
+ * Doxyfile, configure, docs/melt.1, docs/melt.txt,
+ src/framework/mlt_version.h: Set version to 0.7.4
+
+ * NEWS: Add release notes for v0.7.4
+
+ * src/modules/jackrack/factory.c, src/modules/jackrack/plugin_desc.c,
+ src/modules/jackrack/plugin_desc.h: Properly represent LADSPA plugin author.
+
+2011-07-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Cleanup fprintf left in last
+ commmit
+
+ * src/modules/avformat/producer_avformat.c: Fix audio glitch on seek
+ (3362840).
+
+2011-07-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/producer_xml.c: Load XML with LC_NUMERIC without changing
+ global locale. Uses mlt_properties_set_lcnumeric() instead of setlocale().
+ This is only known to work on Linux.
+
+ * src/framework/mlt_properties.c: Use correct constant for
+ mlt_properties_set_lcnumeric().
+
+2011-07-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix regression seeking to in
+ point on seekable.
+
+2011-07-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_properties.c, src/framework/mlt_property.c,
+ src/framework/mlt_property.h: Fix build on new locale stuff when not Linux or
+ OS X.
+
+2011-07-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_properties.c, src/framework/mlt_property.c: Fix build for
+ querylocale() on OS X.
+
+ * presets/consumer/avformat/webm, presets/consumer/avformat/webm-pass1,
+ presets/consumer/avformat/webm-pass2: Fix webm preset.
+
+ * src/framework/mlt_properties.c: Ensure serialized yaml is LC_NUMERIC=C.
+ This is needed to ensure consistency. The metadata is read as string data and
+ converted to numbers on demand. This is why loading defaults to C locale -
+ since they were authored with that in mind. However, some plugins dynamically
+ generate metadata and may set values with int or double. Therefore, we need
+ to make it all output consistently, and for now that means C.
+
+ * src/framework/mlt_property.c: Protect locale hack with a mutex to ensure
+ consistency.
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h,
+ src/modules/sdl/consumer_sdl_preview.c: Make maximum consecutive-dropped
+ frames configurable. Defaults to old value of 5 that seems more preferable
+ for video editing.
+
+ * src/framework/mlt_playlist.c: Fix playlist corruption with long blanks
+ (kdenlive-2219).
+
+ * src/modules/gtk2/producer_pango.c: Add a workaround in pango for old
+ kdenlive countdowns.
+
+2011-07-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/feeds/NTSC/data_fx.properties,
+ src/modules/feeds/NTSC/etv.properties,
+ src/modules/feeds/NTSC/obscure.properties,
+ src/modules/feeds/PAL/border.properties,
+ src/modules/feeds/PAL/data_fx.properties,
+ src/modules/feeds/PAL/etv.properties: Convert , to / delimiter in data_show
+ templates.
+
+ * src/framework/metaschema.yaml, src/framework/mlt_properties.c: Add
+ LC_NUMERIC handling to YAML Tiny parser.
+
+ * src/framework/mlt_properties.c, src/framework/mlt_properties.h,
+ src/mlt++/MltProperties.cpp, src/mlt++/MltProperties.h: Add
+ mlt_properties_get_lcnumeric and Properties::get_lcnumeric
+
+ * src/mlt++/MltProperties.cpp, src/mlt++/MltProperties.h: Add
+ Properties::set_lcnumeric().
+
+ * src/framework/mlt_properties.c, src/framework/mlt_properties.h,
+ src/framework/mlt_property.c, src/framework/mlt_property.h: Add
+ mlt_properties_set_lcnumeric, mlt_property_get_double_l, and
+ mlt_property_get_string_l. Locale-specific variants of key properties
+ functions.
+
+ * src/modules/core/filter_obscure.c: Let obscure accept / as a coordinate
+ delimiter.
+
+ * src/modules/frei0r/factory.c: Make frei0r version metadata support locale.
+ Patch by j-b-m
+
+2011-07-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/filter_data_show.yml, src/modules/core/filter_gamma.yml,
+ src/modules/core/filter_greyscale.yml, src/modules/core/filter_luma.yml,
+ src/modules/core/filter_watermark.yml, src/modules/core/producer_colour.yml,
+ src/modules/core/producer_noise.yml, src/modules/dv/producer_libdv.yml,
+ src/modules/gtk2/producer_pango.yml, src/modules/gtk2/producer_pixbuf.yml,
+ src/modules/vorbis/producer_vorbis.yml, src/modules/xml/producer_xml.yml:
+ Convert services.txt to metadata YAML (WIP). Patch by Brian Matherly.
+
+2011-07-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/xml/consumer_xml.c, src/modules/xml/mlt-xml.dtd,
+ src/modules/xml/producer_xml.c: Add LC_NUMERIC to MLT XML. This does not
+ permit one to mix locales within a MLT process! In other words, you can not
+ load a document in a locale using one decimal separator and then filter with
+ a double property using a different separator.
+
+ * src/modules/oldfilm/filter_vignette.c, src/modules/plus/filter_charcoal.c:
+ Fix some default numeric property values in some locales. Strings with a
+ period for decimal separator do not convert correctly in locales that use
+ comma for the decimal separator.
+
+ * demo/README, demo/demo, demo/mlt_bouncy, demo/mlt_bouncy_ball,
+ demo/mlt_composite_transition, demo/mlt_my_name_is, demo/mlt_news,
+ demo/mlt_obscure, demo/mlt_push, demo/mlt_slideshow2,
+ demo/mlt_slideshow_black, demo/mlt_squeeze, demo/mlt_squeeze_box,
+ demo/mlt_swf_variables, demo/mlt_ticker, demo/mlt_title_over_gfx,
+ demo/mlt_titleshadow_watermark, demo/mlt_voiceover, demo/mlt_watermark,
+ demo/pango.mlt, docs/framework.txt, docs/services.txt,
+ src/framework/mlt_geometry.c, src/modules/core/filter_obscure.c,
+ src/modules/core/transition_composite.c,
+ src/modules/core/transition_region.c, src/modules/motion_est/Makefile,
+ .../motion_est/filter_autotrack_rectangle.c,
+ src/modules/plus/transition_affine.c, src/tests/hello.c: Use '/' for
+ coordinate delimiter instead of period. Period is a decimal separator in
+ some locales.
+
+ * demo/consumers.ini, demo/demo.ini: Fix usage of cut in demo script for some
+ platforms (OSX).
+
+2011-07-05 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/webm, presets/consumer/avformat/webm-pass1,
+ presets/consumer/avformat/webm-pass2: Add some WebM presets.
+
+2011-07-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/configure: Cleanup display of recommended versions.
+
+ * presets/consumer/avformat/x264-medium-pass1: Skip audio output with first
+ pass.
+
+ * presets/consumer/avformat/x264-medium-pass1: Add new FFmpeg fastfirstpass
+ option.
+
+ * src/modules/avformat/consumer_avformat.c: Suppress confusing message when
+ vpre does not exist.
+
+ * presets/consumer/avformat/x264-medium-baseline,
+ presets/consumer/avformat/x264-medium-main: Fix profile-based x264 presets
+ for FFmpeg v0.8+.
+
+ * src/modules/avformat/consumer_avformat.c: Fix crash in consumer on FFmpeg
+ v0.8 and later.
+
+ * src/modules/avformat/configure: Revert removal of --avformat-ldextra.
+
+ * src/modules/avformat/factory.c: Fix metadata for avformat
+ demuxer/device-specific options.
+
+ * presets/consumer/avformat/x264-medium,
+ presets/consumer/avformat/x264-medium-baseline,
+ presets/consumer/avformat/x264-medium-main,
+ presets/consumer/avformat/x264-medium-pass1: Add some x264-medium presets.
+
+ * src/modules/avformat/Makefile, src/modules/avformat/configure: Dropping
+ support for --avformat-svn. Subversion is no longer used, FFmpeg and libav
+ have forked, and now there are the build scripts.
+
+ * src/modules/avformat/producer_avformat.c,
+ src/modules/avformat/producer_avformat.yml, src/modules/melt/producer_melt.c:
+ Support standard query syntax on avformat URL.
+
+ * reconfigure: Add convenient reconfigure script.
+
+2011-07-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Change some verbose messages with
+ new_seek to debug.
+
+ * src/modules/avformat/producer_avformat.c: Fix file descriptor leak in
+ reopen_video().
+
+ * src/modules/avformat/producer_avformat.c: Fix race condition by adding
+ take_lock to producer_open().
+
+ * src/framework/mlt_consumer.c: Add check for null frame.
+
+ * src/modules/dv/producer_libdv.c: Make libdv sample aspect ratio consistent
+ with profiles. Patch by: Maksym Veremeyenko
+
+2011-07-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/DeckLinkAPI_h.h,
+ src/modules/decklink/DeckLinkAPI_i.cpp, src/modules/decklink/Makefile,
+ src/modules/decklink/configure, src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/producer_decklink.cpp: Add Windows support for DeckLink.
+
+2011-06-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl.c: Make it easier to embed sdl in Windows
+ applications.
+
+2011-06-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Add handling for heavy frame-dropping with
+ real_time>1.
+
+ * src/framework/mlt_consumer.c: Improve reliability of real_time=1
+ frame-dropping.
+
+ * src/framework/mlt_consumer.c: Simplify and comment real_time=1
+ frame-dropping.
+
+2011-06-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Use int64_t for req_position and
+ int_position.
+
+2011-06-22 Dan Dennedy <dan@dennedy.org>
+
+ * presets/consumer/avformat/dv_ntsc/DV,
+ presets/consumer/avformat/dv_ntsc/DVCPRO50,
+ presets/consumer/avformat/dv_ntsc_wide/DV,
+ presets/consumer/avformat/dv_ntsc_wide/DVCPRO50,
+ presets/consumer/avformat/dv_pal/DV,
+ presets/consumer/avformat/dv_pal/DVCPRO50,
+ presets/consumer/avformat/dv_pal_wide/DV,
+ presets/consumer/avformat/dv_pal_wide/DVCPRO50: Add DV and DVCPRO50 encode
+ presets.
+
+2011-06-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Make sure avformat consumer
+ closes all mlt_frames.
+
+ * src/modules/avformat/producer_avformat.c: Fix regression on avdevice. When
+ using non-integer profile frame rate, supplying frame_rate on URL, and not
+ supplying frame_rate_base on URL.
+
+ * src/modules/core/producer_consumer.c: Fix xml producer overwriting explicit
+ profile.
+
+2011-06-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/Makefile, src/framework/mlt_types.h, src/melt/Makefile,
+ src/modules/avformat/Makefile, src/modules/gtk2/Makefile,
+ src/modules/sdl/Makefile, src/win32/fnmatch.c: Cleanup Win32 build.
+
+ * src/framework/mlt_repository.c: Win32 compile fix.
+
+2011-06-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_transition.c, src/modules/core/transition_composite.c:
+ Fix regression in field rendering luma transition. Due to refactoring
+ composite and luma into mlt_transition_get_progress_delta().
+
+ * src/modules/avformat/producer_avformat.c: Fix int64_t to int overflow
+ problem.
+
+2011-06-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Support decklink video input
+ format detection. This makes it work with auto-producer. After calling
+ mlt_profile_from_producer(), you must close the decklink producer and re-open
+ it with the updated profile. Also, this adds support for top_field_first and
+ colorspace indication.
+
+2011-06-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Fix waiting for frame in
+ decklink producer.
+
+ * profiles/sdi_486i_5994: Fix aspect ratio of sdi_486i_5994.
+
+ * src/modules/avformat/producer_avformat.c,
+ src/modules/avformat/producer_avformat.yml: Add video_delay to avformat
+ producer.
+
+2011-06-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Provide A/V sync for non-seekable
+ sources.
+
+ * src/melt/melt.c: Fix melt -silent with pipe input.
+
+ * src/modules/decklink/producer_decklink.cpp,
+ src/modules/decklink/producer_decklink.yml: Add prefill property to decklink
+ producer.
+
+ * src/modules/avformat/producer_avformat.c: Fix bug in avformat URL parsing.
+ Especially reproducible on file: URLs.
+
+ * src/modules/avformat/producer_avformat.c: Fix sync of multiple audio
+ streams with audio_index=all.
+
+2011-06-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix infinite loop with
+ audio_index=all on sample provided by BCE.
+
+ * src/modules/decklink/consumer_decklink.cpp: Rework decklink consumer to use
+ timestamped audio packet. Patches supplied by Maksym Veremeyenko.
+
+2011-06-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Disable new_seek on h264/ts from
+ non-seekable source (udp, pipe).
+
+2011-06-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/producer_pango.c: Fix pango producer from loading with
+ empty string arg.
+
+2011-06-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Temporary fix for new crash when
+ closing codec.
+
+ * src/modules/avformat/consumer_avformat.c: Fix setting codec-specific
+ options for avcodec v53.
+
+ * src/modules/avformat/factory.c: Fix crash generating avformat metadata.
+
+ * src/framework/mlt_consumer.c, src/modules/avformat/consumer_avformat.yml:
+ Change consumer 'profile' property to 'mlt_profile' libavcodec uses the
+ profile property for aac and libx264.
+
+2011-06-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Drop usage of av_demuxer_open()
+ in avformat v53. It is causing problems and need more stability after the
+ raft of changes.
+
+ * src/modules/avformat/producer_avformat.c: Fix regressions on libavformat
+ v53 and failing on invalid file.
+
+ * src/modules/avformat/consumer_avformat.yml,
+ src/modules/avformat/producer_avformat.yml: Change URI to URL in avformat
+ yaml.
+
+ * src/modules/avformat/producer_avformat.c: Fix compilation error on
+ libavformat v53.
+
+ * src/melt/melt.c, src/modules/avformat/consumer_avformat.c: Send melt -query
+ and -help to stdout. Nice for use with pager or grep, awk, etc.
+
+ * src/melt/melt.c: Do not open terminal on stdin if not a tty.
+
+ * src/melt/melt.c: Have melt detect 'pipe:' and disable reading stdin on
+ terminal.
+
+ * src/modules/avformat/producer_avformat.c: Fix setting default streams on
+ non-seekable streams.
+
+ * src/modules/avformat/producer_avformat.c: Fix setting demuxer private
+ options libavformat for v53+.
+
+ * src/modules/avformat/producer_avformat.c: Tidy code dealing with
+ AVFormatParameters.
+
+ * src/modules/avformat/producer_avformat.c: Refactor common code around
+ producer_open into producer_open.
+
+ * src/modules/avformat/producer_avformat.c: minor cleanup in return handling
+ in parse_url
+
+2011-06-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Use a single AVFormatContext for
+ non-seekable sources. This provides better support for reading from network
+ streams such as rtsp, rtmp, udp, and hopefully pipe.
+
+ * src/modules/avformat/producer_avformat.c: Refactor avformat get_image()
+ into new seek_video().
+
+ * src/modules/avformat/producer_avformat.c: refactor avformat producer_open
+
+ * src/modules/avformat/producer_avformat.c: cleanup producer_avformat_init
+
+ * src/modules/decklink/consumer_decklink.cpp: Default decklink consumer to
+ onefield deinterlace method.
+
+ * src/modules/decklink/consumer_decklink.cpp: Fix decklink keyer playout
+ speed (3311056).
+
+2011-06-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp,
+ src/modules/decklink/consumer_decklink.yml: Enable external keyer on decklink
+ consumer. Patch supplied by Maksym Veremeyenko.
+
+2011-06-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Fix deadlock on no signal in
+ decklink producer.
+
+ * src/modules/decklink/consumer_decklink.cpp: Fix crash in decklink with
+ keyer and interlaced clips (3310104).
+
+ * src/modules/decklink/Makefile: Install consumer_decklink.yml.
+
+2011-05-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Let decklink run forever. Also
+ fix setting resource property.
+
+2011-05-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: Fix decklink choppy playback
+ (3308341). This would occur after several pause and play cycles.
+
+ * src/modules/rotoscoping/filter_rotoscoping.yml: Make rotoscoping filter
+ metadata valid yaml.
+
+ * src/modules/linsys/Makefile, src/modules/linsys/consumer_sdi.yml,
+ src/modules/linsys/factory.c: Add service metadata to linsys module (WIP).
+
+ * src/modules/xml/Makefile, src/modules/xml/consumer_xml.yml,
+ src/modules/xml/factory.c, src/modules/xml/producer_xml-string.yml,
+ src/modules/xml/producer_xml.yml: Add service metadata to xml module (WIP).
+
+ * src/modules/vorbis/Makefile, src/modules/vorbis/factory.c,
+ src/modules/vorbis/producer_vorbis.yml: Add service metadata to vorbis module
+ (WIP).
+
+ * src/modules/core/filter_mono.yml, src/modules/vmfx/Makefile,
+ src/modules/vmfx/factory.c, src/modules/vmfx/filter_chroma.yml,
+ src/modules/vmfx/filter_chroma_hold.yml, src/modules/vmfx/filter_mono.yml,
+ src/modules/vmfx/filter_shape.yml, src/modules/vmfx/producer_pgm.yml: Add
+ service metadata to vmfx module (WIP).
+
+ * src/modules/jackrack/plugin.c, src/modules/jackrack/plugin_mgr.c,
+ src/modules/jackrack/plugin_settings.c: Remove aborts in jackrack module.
+
+2011-05-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/swfdec/Makefile, src/modules/swfdec/producer_swfdec.c,
+ src/modules/swfdec/producer_swfdec.yml: Add service metadata to swfdec module
+ (WIP).
+
+ * src/modules/qimage/producer_qimage.yml, src/modules/sdl/Makefile,
+ src/modules/sdl/consumer_sdl.yml, src/modules/sdl/consumer_sdl_audio.yml,
+ src/modules/sdl/consumer_sdl_preview.yml,
+ src/modules/sdl/consumer_sdl_still.yml, src/modules/sdl/factory.c,
+ src/modules/sdl/producer_sdl_image.yml: Add service metadata for SDL module
+ (WIP).
+
+ * src/modules/plus/transition_affine.yml, src/modules/qimage/Makefile,
+ src/modules/qimage/factory.c, src/modules/qimage/producer_kdenlivetitle.yml,
+ src/modules/qimage/producer_qimage.yml: Add service metadata for qimage
+ module (WIP).
+
+ * src/modules/plus/Makefile, src/modules/plus/factory.c,
+ src/modules/plus/filter_affine.yml, src/modules/plus/filter_charcoal.yml,
+ src/modules/plus/filter_invert.yml, src/modules/plus/filter_sepia.yml,
+ src/modules/plus/transition_affine.yml: Add service metadata to plus module
+ (WIP).
+
+ * src/modules/normalize/Makefile, src/modules/normalize/factory.c,
+ src/modules/normalize/filter_volume.yml: Add service metadata to normalize
+ module (WIP).
+
+ * src/modules/motion_est/Makefile, src/modules/motion_est/factory.c,
+ .../motion_est/filter_autotrack_rectangle.yml,
+ src/modules/motion_est/filter_motion_est.yml,
+ src/modules/motion_est/filter_vismv.yml,
+ src/modules/motion_est/producer_slowmotion.yml: Add service metadata to
+ motion_est module (WIP).
+
+ * src/modules/melt/Makefile, src/modules/melt/factory.c,
+ src/modules/melt/producer_melt.yml, src/modules/melt/producer_melt_file.yml:
+ Add service metadata for melt module (WIP).
+
+ * src/modules/kdenlive/Makefile, src/modules/kdenlive/factory.c,
+ src/modules/kdenlive/filter_boxblur.yml,
+ src/modules/kdenlive/filter_freeze.yml, src/modules/kdenlive/filter_wave.yml,
+ src/modules/kdenlive/producer_framebuffer.yml: Add service metadata for
+ kdenlive module (WIP).
+
+ * src/modules/gtk2/Makefile, src/modules/gtk2/consumer_gtk2_preview.yml,
+ src/modules/gtk2/factory.c, src/modules/gtk2/producer_pango.yml,
+ src/modules/gtk2/producer_pixbuf.yml: Add service metadata for gtk2 module
+ (WIP).
+
+ * src/modules/effectv/Makefile, src/modules/effectv/factory.c,
+ src/modules/effectv/filter_burningtv.yml: Add service metadata for effectv
+ module (WIP).
+
+ * src/modules/dv/Makefile, src/modules/dv/consumer_libdv.yml,
+ src/modules/dv/factory.c, src/modules/dv/producer_libdv.yml: Add service
+ metdata for dv module (WIP).
+
+ * src/swig/ruby/metadata.rb: Add ruby script to generate wiki text files.
+
+ * src/modules/core/Makefile, src/modules/core/factory.c,
+ src/modules/core/filter_audiowave.yml,
+ src/modules/core/filter_brightness.yml,
+ src/modules/core/filter_channelcopy.yml, src/modules/core/filter_crop.yml,
+ src/modules/core/filter_data_show.yml, src/modules/core/filter_gamma.yml,
+ src/modules/core/filter_greyscale.yml, src/modules/core/filter_luma.yml,
+ src/modules/core/filter_mirror.yml, src/modules/core/filter_mono.yml,
+ src/modules/core/filter_obscure.yml, src/modules/core/filter_region.yml,
+ src/modules/core/filter_transition.yml,
+ src/modules/core/filter_watermark.yml, src/modules/core/producer_colour.yml,
+ src/modules/core/producer_consumer.yml, src/modules/core/producer_hold.yml,
+ src/modules/core/producer_noise.yml,
+ src/modules/core/transition_composite.yml,
+ src/modules/core/transition_luma.yml, src/modules/core/transition_mix.yml,
+ src/modules/core/transition_region.yml: Add service metadata for core module
+ (WIP).
+
+2011-05-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/producer_decklink.cpp: Report dropped frames.
+
+ * src/modules/decklink/producer_decklink.cpp: Fix memory leak in decklink
+ producer.
+
+ * src/swig/python/getimage.py, src/swig/python/waveforms.py: Convert Python
+ examples to new frame method.
+
+ * src/swig/python/build: Fix python binding for OS X
+
+ * src/swig/mlt.i: Add mlt.Frame.get_image for Python.
+
+ * src/melt/melt.c: Refactor melt to mlt_profile_from_producer.
+
+ * src/framework/mlt_profile.c, src/framework/mlt_profile.h,
+ src/mlt++/MltProfile.cpp, src/mlt++/MltProfile.h: Add
+ mlt_profile_from_producer(). This new function contains the auto-profile
+ feature. Plus setters for Mlt::Profile.
+
+2011-05-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_cache.c: Do not immediately destroy all cache items on
+ purge. This is behaving badly with the addition of mlt_service_cache_purge
+ in the avformat producer because there were frames in consumer buffers
+ holding references to cache items calling mlt_cache_item_close on
+ destruction.
+
+2011-05-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Prevent multiple starts on mlt_consumer.
+
+2011-05-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix full closure of avformat on
+ explicit close. JBM wrote: Creating a video4linux producer like (simplified
+ code): producer = new Mlt::Producer(*profile, "video4linux2:/dev/video0");
+ consumer->connect(*producer); consumer->start(); It works fine. But when I
+ want to stop the capture, there is no way to stop the video4linux producer.
+ Deleting the producer and the consumer still leaves the video4linux device
+ open. After a few hours of struggling, I figured out that some stuff was
+ kept in the cache. Adding : mlt_service_cache_purge(
+ MLT_PRODUCER_SERVICE(parent) ); to producer_close (as already done for the
+ qimage producer for example) fixes the issue.
+
+ * src/modules/avformat/producer_avformat.c: Fix regression in
+ protocol/avdevice handling.
+
+ * src/modules/jackrack/Makefile, src/modules/jackrack/blacklist.txt,
+ src/modules/jackrack/plugin_mgr.c, src/modules/jackrack/plugin_mgr.h: Add
+ blacklist for ladspa filters. Initially includes dssi-vst since that is
+ unstable on AV Linux 5.
+
+ * configure: Fix segfault in yadif with gcc 4.6 -O1 or -O2.
+
+2011-05-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/jack_rack.c: Do not destroy shared plugin_mgr when
+ closing instance.
+
+ * src/modules/jackrack/factory.c, src/modules/jackrack/jack_rack.c: Let all
+ instances of ladspa share single plugin_mgr.
+
+2011-05-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/filter_resize.c: Fix regression getting consumer
+ aspect_ratio.
+
+ * src/modules/feeds/PAL/data_fx.properties: Fix background color on default
+ PAL data_show.
+
+ * src/modules/core/transition_composite.c: Fix manual deinterlace on B in
+ composite.
+
+2011-05-15 Dan Dennedy <dan@dennedy.org>
+
+ * docs/melt.1, src/melt/melt.c: Document -jack option.
+
+ * docs/melt.1: Add -query preset to man page.
+
+ * src/modules/jackrack/filter_jackrack.c: Change a log item to debug.
+
+ * src/melt/melt.c, src/modules/jackrack/filter_jackrack.c,
+ src/modules/jackrack/process.c: Add first draft of JACK transport sync.
+
+ * src/framework/mlt_consumer.c: Improve frame-dropping for real_time=1. Uses
+ thresholds relative to fps and buffer levels. Properly drops more frames to
+ keep audio continuous. Does not drop first several frames to prevent chopping
+ playback.
+
+ * src/modules/sdl/consumer_sdl_preview.c: Add audio_off and frequency to
+ properties passed to sdl consumer.
+
+ * src/framework/mlt_producer.c: Fix dox error.
+
+2011-05-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/factory.c: Fix big slowdown enumerating all metadata
+ for ladspa plugins.
+
+ * configure, src/mlt++/configure: Fix build on Debian GNU/kFreeBSD.
+
+2011-05-12 Dan Dennedy <dan@dennedy.org>
+
+ * Makefile, presets/consumer/avformat/dv_ntsc/DVD,
+ presets/consumer/avformat/dv_ntsc_wide/DVD,
+ presets/consumer/avformat/dv_pal/DVD,
+ presets/consumer/avformat/dv_pal_wide/DVD, setenv,
+ src/framework/mlt_properties.c, src/framework/mlt_properties.h,
+ src/framework/mlt_repository.c, src/framework/mlt_repository.h,
+ src/melt/melt.c, src/mlt++/MltProperties.cpp, src/mlt++/MltProperties.h,
+ src/mlt++/MltRepository.cpp, src/mlt++/MltRepository.h, src/swig/mlt.i:
+ Presets! Put property setters in a file and apply them to a service using
+ properties=filename. Alternatively, apply a supplied preset using
+ properties=preset. For example, melt ... -consumer avformat:my.vob
+ properties=DVD.
+
+ * src/modules/jackrack/jack_rack.c, src/modules/jackrack/plugin.c,
+ src/modules/jackrack/plugin_mgr.c, src/modules/jackrack/process.c: Convert
+ jackrack printfs to mlt_log (3301094).
+
+2011-05-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/Makefile, src/modules/jackrack/factory.c,
+ src/modules/jackrack/filter_jackrack.yml,
+ src/modules/jackrack/filter_ladspa.yml: Add service metadata for jackrack,
+ ladspa, and ladspa.id.
+
+ * src/modules/jackrack/filter_ladspa.c, src/modules/jackrack/plugin_mgr.c:
+ Add support for ladspa.id variants. This is much more convenient to use
+ without having to compose the JACK Rack XML. Also, we will be able to add
+ future support for property animation (automation), which JACK Rack lacks.
+ However, it does still support loading and processing JACK Rack files.
+
+ * src/modules/sox/factory.c: Simplify sox metadata generator.
+
+2011-05-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/configure: Allow decklink to build on OS X.
+
+ * src/modules/sdl/consumer_sdl_preview.c: sdl_preview should default to
+ real_time=1
+
+ * src/framework/mlt_consumer.c: Revert change to max consecutive dropped
+ frames. At least until a better heuristic is determined.
+
+2011-05-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/factory.c: Add version check for SOX_EFF_INTERNAL.
+
+ * src/modules/sox/Makefile, src/modules/sox/factory.c,
+ src/modules/sox/filter_sox.c, src/modules/sox/filter_sox.yml: Add support for
+ sox.effect variants. The legacy forms of 'sox:"effect options"' and 'sox
+ effect="name options"' still work. The new forms allows them all to be
+ enumerated by Mlt apps, e.g.: melt -query filter. Also, this registers
+ metadata for both the generic 'sox' filter and all of the new 'sox.effect'
+ ones including their usage help!
+
+ * src/modules/avformat/Makefile: Install consumer_avformat.yml
+
+ * src/modules/avformat/filter_avresample.c, src/modules/core/loader.ini: Fix
+ inadvertent reording of resample filters. And add debug log to avresample.
+
+2011-05-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Pad the last audio frame with
+ silence. Instead of returning fewer samples than requested.
+
+ * src/framework/mlt_frame.h: Document the frame audio and image properties.
+
+ * src/framework/mlt_tractor.c, src/modules/avformat/producer_avformat.c,
+ src/modules/dv/producer_libdv.c, src/modules/vorbis/producer_vorbis.c: Make
+ the frame audio properties consistent.
+
+ * src/modules/avformat/producer_avformat.c: Fix avformat producer to use new
+ mlt audio formats.
+
+ * src/modules/core/filter_audioconvert.c: Add conversion routines for new
+ audio formats. These only doing conversion _from_ the new types
+ mlt_audio_s32le and mlt_audio_f32le. There are no plans at the moment for
+ conversion into them, but it is certainly not out of the question.
+
+ * src/framework/mlt_frame.c, src/framework/mlt_types.h: Add mlt_audio_s32le
+ and mlt_audio_f32le audio formats.
+
+ * src/modules/avformat/filter_avresample.c, src/modules/core/Makefile,
+ src/modules/core/factory.c, src/modules/core/filter_audiochannels.c,
+ src/modules/core/loader.ini, src/modules/resample/filter_resample.c: Add
+ audiochannels normalization filter. Refactors code from the resamplers into
+ a new filter to be more manageable. Eventually, we can add options on what to
+ do when adding/removing channels.
+
+2011-05-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix channel count for resizing
+ decoded audio buffer when not resampling.
+
+ * src/modules/avformat/producer_avformat.c: Fix regressions in audio
+ decoding.
+
+ * src/modules/avformat/producer_avformat.c: Cleanup compile warnings.
+
+ * src/modules/avformat/producer_avformat.c: Simplify audio pointer and sample
+ size code.
+
+2011-05-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: WIP to get >16-bit multi-channel
+ audio working. Seems close, but something is wrong.
+
+2011-05-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Copy cached image if writable
+ copy requested.
+
+2011-05-03 Dan Dennedy <dan@dennedy.org>
+
+ * configure, src/framework/mlt_transition.c: Ensure transition B frames get
+ some consumer properties. Also, ensure both A and B frames have sane scaling
+ and aspect ratio values. This addresses an issue where composite and region
+ were not getting the correct deinterlace method impacting performance. In
+ addition, it factors out some common code (best practice) from various
+ transitions moving it into the framework.
+
+2011-05-01 Dan Dennedy <dan@dennedy.org>
+
+ * ChangeLog: Update ChangeLog for v0.7.2
+
+ * Doxyfile, configure, docs/melt.1, src/framework/mlt_version.h: Set version
+ to 0.7.2
+
+ * NEWS: Add release notes for v0.7.2.
+
+ * src/modules/avformat/filter_avresample.c,
+ src/modules/resample/filter_resample.c: Finish work to normalize channel
+ count. Also, refactor the audio resamplers to use mlt_audio_format_size()
+ and mlt_frame_set_audio(). Currently, there are no controls over which
+ channels to drop or duplicate.
+
+ * src/framework/mlt_tractor.c, src/modules/core/producer_consumer.c,
+ src/modules/core/producer_noise.c, src/modules/core/producer_ppm.c: Refactor
+ to mlt_frame_set_audio().
+
+ * src/melt/melt.c: Let 'Q' stop melt as well.
+
+ * src/modules/feeds/NTSC/data_fx.properties,
+ src/modules/feeds/PAL/data_fx.properties: Fix alpha on color of some
+ data-feed properties.
+
+ * src/modules/avformat/factory.c: Free temp string.
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.c: Add support for new codec- and
+ muxer-specific AVOptions.
+
+2011-04-30 Dan Dennedy <dan@dennedy.org>
+
+ * setenv: DYLD_LIBRARY_PATH not needed for me on OS X.
+
+ * src/modules/avformat/producer_avformat.c: Fix sample rate and channel count
+ from avformat producer. If unable to resample or the decoder does not give
+ the requested channel count, then we should return the actual values so
+ downstream components can do the correct thing if they can. A good example of
+ this is 6 channel AAC when the consumer requests 2 channels. Unlike the AC-3
+ decoder, the AAC decoder can not downmix. So, we were returning audio pcm
+ containing 6 channels but with a channel count of 2.
+
+2011-04-29 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Try to duplicate last image if
+ decoding fails.
+
+2011-04-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Fix intermitent crash in mlt_consumer
+ consumer_read_ahead_thread.
+
+ * src/modules/avformat/producer_avformat.c: Use new
+ av_get_bits_per_sample_fmt() in avformat producer.
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: Use new avio functions in avformat
+ module.
+
+2011-04-21 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl_audio.c: Fix deadlock in sdl_audio appearing
+ in kdenlive.
+
+ * src/modules/core/producer_ppm.c: Fix compile warns in producer_ppm.c.
+
+ * src/modules/avformat/filter_avcolour_space.c,
+ src/modules/avformat/producer_avformat.c: Fix regression initializing
+ coefficients.
+
+ * src/modules/avformat/producer_avformat.c: Use newer
+ av_get_sample_fmt_name() if available.
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/filter_avcolour_space.c,
+ src/modules/avformat/filter_swscale.c,
+ src/modules/avformat/producer_avformat.c: Fix avformat compile warns on const
+ and 64-bit string formatting.
+
+ * src/modules/core/producer_hold.c, src/modules/jackrack/filter_jackrack.c:
+ Fix couple compile warns.
+
+ * src/framework/mlt_property.c, src/framework/mlt_types.h,
+ src/modules/linsys/sdi_generator.c: Fix some compile warnings about
+ string-formatting 64bit.
+
+ * src/modules/avformat/audioconvert.h,
+ src/modules/avformat/producer_avformat.c: Drop private audioconvert.h for
+ public samplefmt.h.
+
+2011-04-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.c: More libavcodec v53 changes
+ required.
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: Fix avformat build with libavcodec
+ v53.
+
+ * src/modules/avformat/configure: Fix detect swscale on libavcodec major
+ version bump.
+
+2011-04-18 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_colour.c: Fix corruption in color producer
+ (3288984)
+
+2011-04-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: Fix decklink consumer on
+ devices without keyer.
+
+2011-04-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_profile.c, src/mlt++/MltProfile.cpp,
+ src/mlt++/MltProfile.h, src/swig/mlt.i: Add Mlt::Profile.list().
+
+ * src/framework/mlt_profile.c: Fix mlt_profile_list when MLT_PROFILES_PATH
+ not set.
+
+2011-04-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/kdenlive/filter_freeze.c: Fix deadlock in freeze filter.
+ Reported by Andrew Wason.
+
+2011-04-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.yml, src/modules/avformat/factory.c,
+ src/modules/avformat/producer_avformat.yml: Add avformat consumer metadata.
+ Improve avformat producer metadata. Significantly extend each with AVOptions.
+
+2011-04-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_region.c: Better fix to the region regression
+ (3277867). This one works with bug report test case, timecode overlay in
+ Kdenlive Render, and Region transition in Kdenlive.
+
+ * src/modules/core/transition_composite.c: Fix regression on region
+ transition (3277867).
+
+2011-04-04 Dan Dennedy <dan@dennedy.org>
+
+ * demo/README, demo/demo.ini, demo/mlt_pango_keyframes,
+ demo/pango_keyframes.mpl: Add mlt_pango_keyframes demo.
+
+ * src/modules/gtk2/producer_pango.c: Make pango file on invalid file
+ (3272537).
+
+2011-04-03 Dan Dennedy <dan@dennedy.org>
+
+ * docs/melt.1, docs/melt.txt, src/melt/melt.c: Add -query formats and codecs
+ to melt.
+
+ * docs/melt.1, docs/melt.txt, src/melt/melt.c: Add -query profile to melt.
+
+ * src/framework/mlt_profile.c, src/framework/mlt_profile.h: Add
+ mlt_profile_list().
+
+ * src/modules/decklink/consumer_decklink.yml: Add parameter descriptions.
+
+2011-04-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: Add keyer support to decklink
+ consumer.
+
+2011-03-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.yml,
+ src/modules/decklink/producer_decklink.yml: Add metadata for decklink
+ consumer.
+
+ * src/modules/decklink/Makefile, src/modules/decklink/producer_decklink.cpp,
+ src/modules/decklink/producer_decklink.yml: Add decklink producer.
+
+2011-03-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Fail gracefully on unsupported
+ codec (3251438).
+
+ * configure, src/modules/core/transition_composite.c: Fix regression in
+ region filter (3251260).
+
+ * ChangeLog: Update ChangeLog for v0.7.0.
+
+ * Doxyfile, configure, src/framework/mlt_version.h: Set version to 0.7.0
+
+ * NEWS: Add release notes for v0.7.0.
+
+ * src/modules/melt/producer_melt.c: Fix segfault on missing melt argument
+ (3249982).
+
+ * src/modules/avformat/producer_avformat.c: Fix a segfault in avformat with
+ parallel consumer.
+
+ * src/modules/core/transition_composite.c: Fix composite using wrong B frame
+ scaling. This could happen when the caller of mlt_frame_get_image supplied 0
+ for width and height. For example, Kdenlive's GL output with the sdl_audio
+ consumer with real_time > 1 and paused.
+
+ * docs/melt.1: Fix segfaul on missing melt argument (3249982).
+
+ * src/modules/sdl/consumer_sdl_audio.c: Fix some crashing in sdl_audio.
+
+ * src/modules/sdl/consumer_sdl_audio.c: Also increase audio_buffer default in
+ sdl_audio.
+
+ * src/modules/avformat/configure: Disable VDPAU by default. Require new
+ --avformat-vdpau to enable it.
+
+ * src/modules/avformat/consumer_avformat.c, src/modules/sox/filter_sox.c,
+ src/modules/xml/producer_xml.c: Use mlt_properties_get_value where possible.
+
+ * src/framework/mlt_playlist.c, src/framework/mlt_producer.c,
+ src/framework/mlt_properties.c, src/framework/mlt_properties.h,
+ src/framework/mlt_tractor.c, src/mlt++/MltProperties.cpp,
+ src/mlt++/MltProperties.h: Add mlt_properties_lock and _unlock. Fixes some
+ concurrency safetiness problems.
+
+2011-03-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/configure, src/modules/kino/configure,
+ src/modules/linsys/configure: Enable linsys by default on Linux. Disable
+ linsys and decklink by default on OS X and Windows.
+
+ * src/modules/configure: Display all configure options with --help.
+ Regardless of --enable-gpl setting.
+
+ * src/modules/avformat/producer_avformat.c: Redo locking in avformat
+ producer. This significantly improves concurrency. The service locks added
+ during parallel consumer development also introduced a concurrency
+ performance regression even for the single-threaded consumer. The result was
+ much audio discontinuity due to audio output buffer underruns. As a result,
+ the recent bug fix to re-open the video demuxer upon seeking to the first
+ frame had to be rewritten.
+
+2011-03-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/vdpau.c: Fix vdpau crashes when failed to init.
+
+ * src/modules/avformat/vdpau.c: Fix unchecked vdpau pointer.
+
+ * src/modules/sdl/consumer_sdl_preview.c: Default sdl_preview prefill to 1.
+ Since buffer and prefill were recently passed from sdl_preview onto sdl,
+ sdl's default buffer level changed to the base service default of 25. That
+ change increases the latency of transport controls. Changing the prefill to 1
+ resolves that while still allowing the rendering thread a chance to do some
+ anticipatory work.
+
+ * src/modules/decklink/consumer_decklink.cpp: Fix a comment in decklink
+ consumer.
+
+ * src/framework/mlt_consumer.c, src/modules/decklink/consumer_decklink.cpp:
+ Fix a couple null pointer bugs.
+
+2011-03-22 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/decklink/consumer_decklink.cpp: Improve frame-dropping in
+ decklink.
+
+2011-03-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/jackrack/filter_jackrack.c, src/modules/jackrack/plugin.h,
+ src/modules/jackrack/process.c: Fix build of jackrack module on mingw.
+
+2011-03-19 Dan Dennedy <dan@dennedy.org>
+
+ * profiles/atsc_1080p_50, profiles/atsc_1080p_5994, profiles/atsc_1080p_60:
+ Add high frame rate 1080p profiles.
+
+2011-03-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix regression on seeking to
+ first frame with audio_index set.
+
+2011-03-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Add force_length and
+ adjust_length properties. The reporter on kdenlive bug 2003 reports another
+ user on IRC had the same problem with clips being too long. Change the
+ default length adjustment to be more safe and add new properties to affect
+ the heuristic for other applications that might want a different behavior.
+ adjust_length applies a plus/minus operand to the detected length.
+ force_length provides a brute force length override.
+
+ * src/modules/avformat/producer_avformat.c: Fix some incorrect frame rates in
+ avformat (kdenlive-1616).
+
+ * src/modules/frei0r/factory.c: Support frei0r transitions that use
+ f0r_update2().
+
+ * configure: Fix amd64 detection on FreeBSD. Patch from Alberto Villa.
+
+2011-03-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/filter_crop.c: Add boolean use_profile property to crop
+ filter. This lets one express crop amounts in pixels relative to profile
+ resolution instead of in terms of source resolution.
+
+ * src/modules/frei0r/blacklist.txt: We do not yet support
+ f0r_param_position_t.
+
+2011-03-12 Ertan Deniz <ertanden@gmail.com>
+
+ * src/framework/mlt_factory.c: Set global variables to NULL in
+ mlt_factory_close to enable mlt_factory to be initialized and closed
+ multiple times.
+
+2011-03-12 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Prefer opening codec by name
+ instead of by ID. This fixes a bug with actually using libxvid instead of
+ mpeg4 because both share the same CODEC_ID_MPEG4. This is similar to the
+ recent problem with ac3 selection in new versions of ffmpeg that have 2 ac3
+ encoders.
+
+2011-03-09 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/frei0r/filter_frei0r.c, src/modules/frei0r/frei0r_helper.c,
+ src/modules/frei0r/frei0r_helper.h, src/modules/frei0r/producer_frei0r.c,
+ src/modules/frei0r/transition_frei0r.c: Refactor frei0r and fix time
+ parameter. Refactored to use mlt_filter_get_position and
+ mlt_transition_get_position. frei0r's time parameter is seconds, but we were
+ passing frame count.
+
+ * src/modules/core/transition_region.c: Fix region transition with more than
+ 2 tracks.
+
+ * src/modules/core/transition_region.c, src/modules/plus/transition_affine.c:
+ Refactor to mlt_transition_get_position()
+
+ * src/framework/mlt_transition.c, src/framework/mlt_transition.h,
+ src/mlt++/MltTransition.cpp, src/mlt++/MltTransition.h: Add
+ mlt_transition_get_position()
+
+ * src/modules/core/transition_luma.c: Remove obsolete unique position on
+ frame.
+
+ * src/framework/mlt_transition.c: Use the producer when always active.
+
+ * src/modules/core/filter_luma.c, src/modules/core/filter_watermark.c,
+ src/modules/dgraft/filter_telecide.c, src/modules/kdenlive/filter_freeze.c,
+ .../motion_est/filter_autotrack_rectangle.c,
+ src/modules/motion_est/filter_crop_detect.c,
+ src/modules/oldfilm/filter_vignette.c, src/modules/plus/filter_affine.c,
+ src/modules/vmfx/filter_shape.c: Refactor to mlt_filter_get_position().
+
+2011-03-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/filter_obscure.c: Refactor to mlt_filter_get_progress().
+
+ * src/framework/mlt_filter.c, src/framework/mlt_transition.c: Use the
+ producer when filter/transition always active.
+
+ * src/framework/mlt_filter.c, src/framework/mlt_filter.h,
+ src/mlt++/MltFilter.cpp, src/mlt++/MltFilter.h: Add
+ mlt_filter_get_position().
+
+2011-03-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_composite.c,
+ src/modules/core/transition_luma.c: Refactor to
+ mlt_transition_get_progress_delta().
+
+ * src/framework/mlt_transition.c, src/framework/mlt_transition.h,
+ src/mlt++/MltTransition.cpp, src/mlt++/MltTransition.h: Add
+ mlt_transition_get_progress_delta().
+
+ * src/modules/core/transition_luma.c, src/modules/core/transition_mix.c:
+ Refactor to mlt_transition_get_progress().
+
+ * src/framework/mlt_transition.c, src/framework/mlt_transition.h,
+ src/mlt++/MltTransition.cpp, src/mlt++/MltTransition.h: Add
+ mlt_transition_get_progress().
+
+ * src/modules/core/filter_brightness.c, src/modules/core/filter_obscure.c,
+ src/modules/kdenlive/filter_boxblur.c, src/modules/kdenlive/filter_wave.c,
+ src/modules/normalize/filter_volume.c, src/modules/oldfilm/filter_dust.c,
+ src/modules/oldfilm/filter_grain.c, src/modules/oldfilm/filter_lines.c,
+ src/modules/oldfilm/filter_oldfilm.c: Refactor to mlt_filter_get_progress().
+
+ * src/framework/mlt_filter.c, src/framework/mlt_filter.h,
+ src/mlt++/MltFilter.cpp, src/mlt++/MltFilter.h: Add
+ mlt_filter_get_progress().
+
+ * src/modules/plus/transition_affine.c: Refactor to
+ mlt_transition_get_length().
+
+2011-03-10 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Fix regression on AC-3 fix. The
+ recent AC-3 fix broke automatic codec selection based on format. So, we
+ choose codec by name only for ac3 now.
+
+ * src/modules/swfdec/configure: Fix typo in swfdec configure script.
+
+ * src/modules/swfdec/Makefile, src/modules/swfdec/configure: Add build
+ support for swfdec 0.7. And prioritize newer versions over older ones.
+
+ * src/modules/resample/filter_resample.c: Increase resample buffer size. For
+ example, trying to resample 6 channels of 48 KHz would fail.
+
+ * src/modules/resample/filter_resample.c: Remove unnecessary audio conversion
+ to float.
+
+ * src/modules/avformat/producer_avformat.c: Fix audio resample with
+ audio_index=all. This still only works with channels <= 2. Streams with
+ channels > 2 are resampled downstream with the resample filter. However, that
+ only works when said stream has the highest sample rate.
+
+2011-03-07 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: use new API
+ functions to prevent some possible issues.
+
+2011-03-07 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/filter_audioconvert.c: Fix regression in audioconvert.
+
+2011-03-06 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_composite.c,
+ src/modules/plus/transition_affine.c: Refactor to use
+ mlt_transition_get_length().
+
+ * src/framework/mlt_transition.c, src/framework/mlt_transition.h,
+ src/mlt++/MltTransition.cpp, src/mlt++/MltTransition.h: Add
+ mlt_transition_get_length().
+
+ * src/modules/frei0r/filter_frei0r.c: Refactor to use mlt_frame_get_length().
+
+ * src/modules/normalize/filter_volume.c: Remove unused variable.
+
+ * src/framework/mlt_filter.c, src/framework/mlt_filter.h,
+ src/mlt++/MltFilter.cpp, src/mlt++/MltFilter.h: Add mlt_filter_get_length().
+
+ * src/framework/mlt_playlist.c: Refactor to use mlt_producer_get_playtime().
+
+ * src/modules/core/filter_audioconvert.c, src/modules/core/filter_mono.c,
+ src/modules/core/producer_consumer.c: Refactor to mlt_audio_format_size().
+
+ * src/framework/mlt_frame.c, src/framework/mlt_frame.h: Add
+ mlt_audio_format_size().
+
+ * src/modules/core/producer_noise.c, src/modules/normalize/filter_volume.c:
+ Remove unused variables.
+
+ * src/modules/avformat/filter_avcolour_space.c: Define out this unused code.
+
+ * src/modules/avformat/filter_swscale.c,
+ src/modules/avformat/producer_avformat.c, src/modules/core/filter_crop.c,
+ src/modules/core/filter_resize.c, src/modules/core/producer_colour.c,
+ src/modules/gtk2/filter_rescale.c, src/modules/kdenlive/filter_freeze.c,
+ src/modules/kdenlive/producer_framebuffer.c: Refactor to use
+ mlt_image_format_size().
+
+ * src/framework/mlt_frame.c, src/framework/mlt_frame.h: Add
+ mlt_image_format_size()
+
+ * src/framework/mlt_tractor.c, src/modules/avformat/filter_avcolour_space.c,
+ src/modules/avformat/filter_swscale.c,
+ src/modules/avformat/producer_avformat.c,
+ src/modules/core/filter_audiowave.c, src/modules/core/filter_crop.c,
+ src/modules/core/filter_imageconvert.c, src/modules/core/filter_luma.c,
+ src/modules/core/filter_rescale.c, src/modules/core/filter_resize.c,
+ src/modules/core/filter_watermark.c, src/modules/core/producer_colour.c,
+ src/modules/core/producer_consumer.c, src/modules/core/producer_hold.c,
+ src/modules/core/producer_noise.c, src/modules/core/producer_ppm.c,
+ src/modules/core/transition_composite.c,
+ src/modules/core/transition_region.c, src/modules/dgraft/filter_telecide.c,
+ src/modules/dv/producer_libdv.c, src/modules/frei0r/frei0r_helper.c,
+ src/modules/frei0r/producer_frei0r.c, src/modules/gtk2/filter_rescale.c,
+ src/modules/gtk2/producer_pango.c, src/modules/gtk2/producer_pixbuf.c,
+ src/modules/kdenlive/filter_freeze.c, src/modules/kdenlive/filter_wave.c,
+ src/modules/kdenlive/producer_framebuffer.c,
+ src/modules/motion_est/producer_slowmotion.c,
+ src/modules/plus/filter_affine.c, src/modules/plus/filter_charcoal.c,
+ src/modules/qimage/producer_kdenlivetitle.c,
+ src/modules/qimage/producer_qimage.c, src/modules/sdl/producer_sdl_image.c,
+ src/modules/swfdec/producer_swfdec.c, src/modules/vmfx/producer_pgm.c,
+ src/modules/xine/filter_deinterlace.c: Refactor to use
+ mlt_frame_set_image/_alpha.
+
+ * src/framework/mlt_frame.c, src/framework/mlt_frame.h,
+ src/mlt++/MltFrame.cpp, src/mlt++/MltFrame.h: Add mlt_frame_set_image and
+ mlt_frame_set_alpha.
+
+ * src/framework/mlt_properties.c: Fix spelling error in doxygen.
+
+ * src/framework/mlt_consumer.c: Fix thread cleanup on parallel consumer stop.
+ This was appearing often as a segfault at the end of melt with the avformat
+ consumer.
+
+ * src/modules/gtk2/producer_pango.c, src/modules/gtk2/producer_pixbuf.c:
+ Alias bicubic for hyper in pango and pixbuf.
+
+ * : Add gpl flag file to rotoscoping filter.
+
+ * src/modules/avformat/consumer_avformat.c: Fix AC-3 encoding
+ (kdenlive-2010). FFmpeg now has separate encoders that take float versus
+ fixed samples.
+
+2011-03-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/filter_rescale.c: Make 'bicubic' an alias for highest
+ quality in gtk scaler.
+
+ * src/modules/qimage/qimage_wrapper.cpp: Fix handling monochrome in qimage.
+
+2011-03-03 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_luma.c: Fix string comparison and requested
+ luma size.
+
+ * src/modules/core/filter_resize.c: Prevent attempt to pad to a smaller size.
+
+ * src/modules/core/transition_luma.c: Fix luma semantics when both reverse
+ and invert. Previously, when not using a wipe (dissolve), invert would make
+ the transition have no effect. Now, it works and does the same thing as
+ reverse. Also, when using a wipe, reverse had no effect when invert was set,
+ and the desired effect could not be achieved. Now, it works as expected.
+
+ * demo/demo: Set a profile for the demo script.
+
+ * demo/consumers.ini: Drop MainConcept and BlueFish444 from the demo
+ consumers.
+
+ * src/framework/mlt_properties.c: Improve mlt_properties_close() in debugger.
+
+2011-03-02 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/kdenlive/filter_wave.c: Rewrite wave filter to be
+ parallel-safe. It does this by using mlt_frame_unique_properties(). Also, it
+ fixes a problem not properly processing a source image.
+
+ * src/modules/normalize/filter_volume.c: Refactor volume to use
+ mlt_frame_unique_properties().
+
+ * src/framework/mlt_frame.c, src/framework/mlt_frame.h: Add
+ mlt_frame_unique_properties().
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/filter_avcolour_space.c,
+ src/modules/avformat/filter_avdeinterlace.c,
+ src/modules/avformat/filter_avresample.c,
+ src/modules/avformat/filter_swscale.c,
+ src/modules/avformat/producer_avformat.c, src/modules/avformat/vdpau.c:
+ Rename 'this' in avformat module.
+
+ * src/modules/frei0r/not_thread_safe.txt: Mark more frei0r filters not
+ thread-safe.
+
+2011-03-01 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/kdenlive/producer_framebuffer.c: Fix deadlock regression in
+ framebuffer producer.
+
+ * src/modules/frei0r/not_thread_safe.txt: Flag some frei0r filters as not
+ thread-safe.
+
+ * src/modules/sdl/consumer_sdl.c: Fix deadlock in sdl_preview. This would
+ occur when trying to play from a paused state at the end of the project.
+
+2011-03-01 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c,
+ src/modules/rotoscoping/filter_rotoscoping.yml: rotoscoping: remove parameter
+ precision. Its influence on speed was very minimal while it caused some
+ crashes. Also update YAML filter description.
+
+2011-02-28 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_luma.c: Fix integrity of luma transition when
+ parallel.
+
+ * src/modules/avformat/producer_avformat.c: Workaround incorrect duration on
+ some clips (kdenlive-2003).
+
+ * src/modules/avformat/producer_avformat.c: Fix regression in determination
+ of seekable.
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_deque.c,
+ src/framework/mlt_events.c, src/framework/mlt_factory.c,
+ src/framework/mlt_field.c, src/framework/mlt_filter.c,
+ src/framework/mlt_frame.c, src/framework/mlt_geometry.c,
+ src/framework/mlt_multitrack.c, src/framework/mlt_parser.c,
+ src/framework/mlt_playlist.c, src/framework/mlt_pool.c,
+ src/framework/mlt_producer.c, src/framework/mlt_profile.c,
+ src/framework/mlt_properties.c, src/framework/mlt_property.c,
+ src/framework/mlt_property.h, src/framework/mlt_repository.c,
+ src/framework/mlt_service.c, src/framework/mlt_tokeniser.h,
+ src/framework/mlt_tractor.c, src/framework/mlt_transition.c: Rename this to
+ self in the framework. This makes doxygen output better match the headers,
+ and it improves life within a code-parsing IDE like Qt Creator.
+
+ * demo/demo.ini: Fixup demo.ini
+
+ * src/framework/mlt_geometry.c: Rename self to g in mlt_geometry.
+
+ * src/modules/avformat/producer_avformat.c: Fix compiler error on older
+ version of libavutil.
+
+2011-02-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Fix mlt_consumer_position when
+ encoding audio only.
+
+ * src/modules/avformat/consumer_avformat.c,
+ src/modules/avformat/producer_avformat.c: Add support for FFmpeg AVMetadata
+ API.
+
+ * src/modules/avformat/producer_avformat.c: Fix compiler warning on
+ av_get_pix_fmt().
+
+ * src/modules/avformat/producer_avformat.c: Rewrite seekable check in
+ avformat. Now, alsa input works: melt -profile dv_pal alsa:default
+ video4linux with alsa: melt -profile quarter_15 video4linux2:/dev/video1 \
+ -track alsa:default -transition mix And files over HTTP can handle seeking.
+
+2011-02-27 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping: Add parameters
+ feather and feather_passes. Feathering is done by bluring the map containing
+ the masked area.
+
+2011-02-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/frei0r/blacklist.txt: Remove frei0r.facedetect from black list.
+
+ * src/modules/frei0r/not_thread_safe.txt: Mark frei0r.cluster as not
+ thread-safe.
+
+ * src/modules/frei0r/factory.c: Fix small memory leak each a frei0r plugin is
+ instantiated.
+
+2011-02-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Add support for pix_fmt on
+ avformat resource URL. For example,
+ libdc1394:/dev/raw1394?frame_rate:15\&pix_fmt:yuv422 makes a Firewire digital
+ camera (not DV camcorder) on Linux work.
+
+ * src/modules/avformat/producer_avformat.c: Add support for avdevice video
+ channel selection. For example, video4linux2:/dev/video0?channel=2 sets the
+ input to S-
+
+ * setenv: fix setenv
+
+2011-02-24 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_transition.c: Support forever transitions (in and out not
+ supplied).
+
+ * src/modules/core/filter_rescale.c: Add 'factor' property to scale filters.
+ Under certain conditions it can be desirable to manually change the
+ resolution. Caution: one can still not use this in a completely generic way
+ with this change. For example, in a realtime playout situation, one can
+ attach swscale with factor=0.25, followed by frei0r.cluster, followed by
+ swscale again with no properties. The first swscale will downscale the image
+ for the heavy cluster filter. The last swscale will upscale it to make the
+ rest of the project components happy.
+
+2011-02-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/frei0r/Makefile, src/modules/frei0r/factory.c,
+ src/modules/frei0r/frei0r_helper.c, src/modules/frei0r/not_thread_safe.txt:
+ Mark some frei0r plugins as not thread safe.
+
+2011-02-20 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping: number of points
+ can now change from keyframe to keyframe. Result may be unexpected though.
+ Additionally some cleanup
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping: rename mode
+ "matte" to "luma" Additionally prevent serialization of internal parameters
+
+2011-02-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Fix video4linux in avformat
+ producer. melt video4linux2:/dev/video0
+
+ * docs/install.txt, docs/mlt-xml.txt, docs/services.txt, setenv: Remove info
+ about mainconcept and bluefish services.
+
+ * src/framework/mlt_producer.c, src/framework/mlt_producer.h,
+ src/modules/core/producer_consumer.c, src/modules/core/producer_hold.c,
+ src/modules/core/producer_noise.c, src/modules/frei0r/factory.c,
+ src/modules/motion_est/producer_slowmotion.c: Add profile parameter to
+ mlt_producer_new.
+
+ * src/framework/mlt_service.c: Check pointer passed to mlt_service_profile.
+
+ * src/modules/core/producer_colour.c: Fix aspect ratio of color producer.
+
+ * configure: Add --enable-debug option.
+
+2011-02-19 j-b-m <jb@kdenlive.org>
+
+ * src/modules/gtk2/producer_pixbuf.c, src/modules/qimage/qimage_wrapper.cpp:
+ Store exif orientation. Patch attached internally stores the exif
+ orientation so that it can be accessible to the framework and apps using it.
+ Useful it in Kdenlive to correctly rotate images when creating proxy images.
+
+2011-02-19 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/motion_est/Makefile: Fix lib suffix on motion_est.
+
+2011-02-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl_audio.c: Disable purging consumer on seek in
+ sdl_audio. Due to misbehaving on parallel-consumer.
+
+2011-02-16 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping: Use
+ "property-changed" event to find out when to parse the spline
+
+2011-02-13 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl.c: Playout remaining frames in sdl at
+ end-of-stream.
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h,
+ src/modules/sdl/consumer_sdl_preview.c: Fix deadlocks in sdl_preview with
+ parallel-consumer.
+
+2011-02-08 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/transition_composite.c: Fix image skew bug in composite
+ (kdenlive-1923).
+
+ * src/modules/core/transition_luma.c: Fix deinterlace when luma is inverted
+ (kdenlive-1953).
+
+2011-02-07 j-b-m <jb@kdenlive.org>
+
+ * src/modules/plus/transition_affine.c: Make offset in affine transition
+ keyframable.
+
+2011-02-05 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping: fix mode alpha
+ not working with image format rgb24a
+
+2011-02-03 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping: prevent possible
+ crash
+
+2011-01-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/core/producer_consumer.c: Copy the alpha channel in
+ producer_consumer.
+
+2011-01-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/consumer_avformat.c: Improve efficiency of memory copy
+ in avformat consumer. Patch from Paul Flinders <paul@flinders.org>.
+
+ * src/modules/avformat/producer_avformat.c: Be pessimistic about the duration
+ (kdenlive-1962). Some clip formats give a slightly longer duration estimate,
+ and MLT does not handle that well especially in some non-interactive use
+ cases like transcoding and automated processing.
+
+2011-01-27 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/gtk2/Makefile: Link pango producer with libiconv on Mac OS X.
+
+2011-01-27 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/Makefile, src/modules/rotoscoping/factory.c,
+ src/modules/rotoscoping/filter_rotoscoping.c,
+ src/modules/rotoscoping/filter_rotoscoping.yml: Rotoscoping: Set default mode
+ to alpha and add YAML filter description
+
+2011-01-26 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/avformat/producer_avformat.c: Do not round up the duration
+ (kdenlive-1962).
+
+ * src/modules/avformat/producer_avformat.c: Fix pausing on vdpau with
+ noimagecache. Also uses AVFrame we already have instead of local AVPicture.
+
+ * src/modules/avformat/producer_avformat.c: Make seeking to first frame more
+ reliable.
+
+2011-01-25 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/consumer_sdl.c: Increase default SDL audio buffer to
+ prevent crackling.
+
+ * src/framework/mlt_consumer.c: Make worker thread handle tracking more
+ portable.
+
+2011-01-25 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: another small
+ cleanup
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: cleanup
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: Mode matte
+ should also work in yuv420p (untested since forcing a conversion from yuv422
+ does not work)
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: only the mode
+ rgb requires a specific colorspace
+
+2011-01-24 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: Save the the
+ json object so we do not have to parse the parameter at every processing but
+ only when it changed
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: use mlt_pool
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: rename "mask"
+ mode to "matte"
+
+2010-11-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/plus/filter_affine.c: Reduce service lock contention in affine
+ filter.
+
+ * src/modules/frei0r/filter_frei0r.c, src/modules/frei0r/frei0r_helper.c,
+ src/modules/frei0r/frei0r_helper.h, src/modules/frei0r/producer_frei0r.c,
+ src/modules/frei0r/transition_frei0r.c: Reduce service lock contention in
+ frei0r module.
+
+2010-11-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Fix race condition on frame pointer in
+ parallel consumer.
+
+2010-10-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Fix multiple workers getting the same frame.
+
+2010-10-04 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h,
+ src/framework/mlt_frame.h: Use a single queue for parallel workers. This is
+ a major change from the previous model of moving work items (frames) from one
+ queue to another. This new model improves the behavior of realtime mode and
+ performance overall. In the new model, a single queue is used along with an
+ is_processed flag on the frame. Also, there is an index into the queue
+ (process_head) that indicates from which point should a worker consider
+ fetching the next unprocessed frame. There are situations in realtime mode
+ where the processing of a frame takes longer than the queue (or from head to
+ its fetch index). Over extended periods of this heavy processing, the video
+ frame in the consumer may never be updated (rendered=1)! To remedy this, the
+ consumer detects this and automatically moves the process_head towards the
+ tail, but even this may not be good enough. The only real remedy is to
+ increase buffers and suffer with poor latency. If lower latency is preferred,
+ then it may be better to not use realtime mode and permit audio
+ discontinuity.
+
+ * src/framework/mlt_types.h: Add a MLT_FRAME() cast. And white-space align
+ the casts.
+
+ * src/framework/mlt_deque.c, src/framework/mlt_deque.h: Add mlt_deque_peek()
+ with index.
+
+2010-06-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Remove audio processing from the worker
+ threads. This has a bad interaction with the avformat producer, which
+ contains a buffer of unused decoded samples. This shifts audio processing to
+ the main consumer thread, which is often light anyways. I recommend to set
+ the threads property to 2 or more on the avformat consumer to offload video
+ encoding to separate threads from the audio processing and encoding.
+
+ * src/modules/xine/filter_deinterlace.c: Make YADIF reentrant.
+
+ * src/framework/mlt_consumer.c: Fix regression frames out-of-order.
+
+ * src/framework/mlt_consumer.c: Fix compiler warning on this enum.
+
+2010-06-14 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Change this log message back to debug level.
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_frame.c,
+ src/framework/mlt_tractor.c, src/modules/core/filter_imageconvert.c,
+ src/modules/sdl/consumer_sdl.c: Fix image format consistency and conversion.
+
+2010-06-11 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_tractor.c: Remove the
+ tractor service locking. This completely inhibited parallelism, but removing
+ it also exposes more race conditions that require resolution.
+
+ * src/framework/mlt_consumer.c: Add work queue to the parallel consumer.
+ This removes get_frame calls from the worker threads. The get_frame call must
+ take a service lock and that creates contention between the threads.
+
+ * src/modules/xine/filter_deinterlace.c: Add service locks around yadif
+ context.
+
+2010-04-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c: Change this log message to debug level.
+
+2010-03-04 Dan Dennedy <dan@dennedy.org>
+
+ * .../motion_est/filter_autotrack_rectangle.c,
+ src/modules/motion_est/filter_crop_detect.c,
+ src/modules/motion_est/filter_motion_est.c,
+ src/modules/normalize/filter_volume.c, src/modules/oldfilm/filter_dust.c,
+ src/modules/oldfilm/filter_lines.c, src/modules/plus/filter_affine.c,
+ src/modules/plus/transition_affine.c,
+ src/modules/qimage/producer_kdenlivetitle.c,
+ src/modules/qimage/producer_qimage.c, src/modules/sox/filter_sox.c,
+ src/modules/vorbis/producer_vorbis.c: Add service locks for parallelism.
+
+ * src/modules/sdl/consumer_sdl_preview.c: Pass real_time, buffer, and prefill
+ properties onto normal sdl consumer.
+
+ * src/modules/sdl/consumer_sdl.c: Log dropped frames at info log level.
+
+ * src/modules/avformat/filter_avresample.c,
+ src/modules/avformat/filter_swscale.c,
+ src/modules/avformat/producer_avformat.c,
+ src/modules/core/filter_data_show.c, src/modules/core/filter_luma.c,
+ src/modules/core/filter_watermark.c, src/modules/core/producer_colour.c,
+ src/modules/core/transition_composite.c, src/modules/core/transition_luma.c,
+ src/modules/core/transition_region.c, src/modules/effectv/filter_burn.c,
+ src/modules/frei0r/filter_frei0r.c, src/modules/frei0r/producer_frei0r.c,
+ src/modules/frei0r/transition_frei0r.c, src/modules/gtk2/producer_pango.c,
+ src/modules/gtk2/producer_pixbuf.c, src/modules/kdenlive/filter_freeze.c,
+ src/modules/kdenlive/producer_framebuffer.c,
+ src/modules/resample/filter_resample.c: Add service locks for parallelism.
+ RGB filters and transitions from frei0r and burningtv are still not safe
+ enough.
+
+ * src/framework/mlt_tractor.c: Set the proper size of "image" where known.
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h: Add parallelism
+ to mlt_consumer. To use set real_time greater than 1 for frame-dropping or
+ less than -1 for no frame-dropping. It works better with a liberal buffer
+ size. You can still set prefill less than buffer size, but it must be at
+ least the same number as real_time, preferably a little higher to help with
+ frame ordering.
+
+2010-02-20 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_deque.c, src/framework/mlt_deque.h: Add
+ mlt_deque_insert().
+
+2010-02-16 Dan Dennedy <dan@dennedy.org>
+
+ * src/framework/mlt_consumer.c, src/framework/mlt_consumer.h: Qualify queue,
+ mutex, and cond vars with frame_queue_.
+
+2011-01-23 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/qimage/producer_qimage.c: Fix build outside MinGW.
+
+ * src/modules/jackrack/configure: Fix getting LADSPA include dir from
+ listplugins.
+
+ * configure, src/framework/mlt_version.h: Move to an interim version number.
+
+2011-01-17 Dan Dennedy <dan@dennedy.org>
+
+ * src/examples/Makefile: Make this example use the mlt++ pkg-config. This
+ more accurately demonstrates how to build a C++ app against mlt++.
+
+ * src/modules/sdl/consumer_sdl.c, src/modules/sdl/consumer_sdl_still.c: SDL
+ tweaks for Windows discovered when embedded.
+
+ * src/framework/Makefile, src/mlt++/Makefile, src/mlt++/config.h: On Windows
+ install .def and version-less DLLs to let apps build against us.
+
+ * src/framework/mlt_factory.c, src/modules/avformat/configure,
+ src/modules/frei0r/factory.c, src/modules/jackrack/plugin_mgr.c: On Windows
+ locate plugins and data by directory relative to current directory. lib\mlt
+ lib\frei0r-1 lib\ladspa share\mlt share\ffmpeg
+
+2010-12-31 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/swfdec/Makefile: Fix swfdec build on MinGW.
+
+ * src/modules/xml/consumer_xml.c, src/modules/xml/producer_xml.c: Cleanup
+ libxml changes for MinGW.
+
+ * src/modules/jackrack/configure, src/modules/jackrack/jack_rack.c: Fix
+ JackRack build on MinGW.
+
+ * src/modules/qimage/Makefile, src/modules/qimage/configure,
+ src/modules/qimage/producer_qimage.c, src/modules/qimage/qimage_wrapper.cpp,
+ src/modules/qimage/qimage_wrapper.h: Fix qimage build for MinGW.
+
+2010-12-30 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sox/configure: Fix sox build on MinGW.
+
+ * src/modules/frei0r/factory.c: Fix frei0r build on MinGW.
+
+ * src/modules/xml/consumer_xml.c, src/modules/xml/producer_xml.c: Fix libxml2
+ build on MinGW.
+
+ * src/modules/gtk2/Makefile, src/modules/gtk2/consumer_gtk2.c,
+ src/modules/gtk2/producer_pixbuf.c: Fix gtk2 build on mingw.
+
+2010-12-15 Dan Dennedy <dan@dennedy.org>
+
+ * src/melt/Makefile, src/melt/io.c, src/melt/melt.c,
+ src/modules/sdl/consumer_sdl.c: Fix SDL and keyboard input on Win32.
+
+2010-12-05 Dan Dennedy <dan@dennedy.org>
+
+ * src/modules/sdl/Makefile: Fix build of mingw branch on Linux. Fixing this
+ here prior to merging into master.
+
+2010-12-03 Dan Dennedy <dan@dennedy.org>
+
+ * configure, src/framework/Makefile, src/melt/Makefile, src/melt/io.c,
+ src/mlt++/Makefile, src/mlt++/MltFactory.cpp, src/mlt++/MltFactory.h,
+ src/mlt++/config.h, src/mlt++/configure, src/modules/avformat/Makefile,
+ src/modules/core/Makefile, src/modules/core/producer_loader.c,
+ src/modules/kino/configure, src/modules/motion_est/Makefile,
+ src/modules/sdl/Makefile, src/modules/sdl/consumer_sdl.c,
+ src/modules/sdl/consumer_sdl_audio.c, src/modules/sdl/consumer_sdl_preview.c,
+ src/modules/sdl/consumer_sdl_still.c, src/win32/fnmatch.c,
+ src/win32/fnmatch.h, src/win32/win32.c: Initial port to Windows using MinGW.
+ Much of the credit goes to Michael Zenov.
+
2011-01-23 Dan Dennedy <dan@dennedy.org>
+ * ChangeLog: Update ChangeLog for v0.6.2.
+
* Doxyfile, configure, docs/melt.1, src/framework/mlt_version.h: Set version
to 0.6.2.
* NEWS: Add v0.6.2 release notes.
+2011-01-22 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: add parameter
+ alpha_operation with possible values: clear, max, min, add, sub
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Fix not every point
+ calculated for the spline was used
+
+2011-01-21 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: - Rename
+ parameter polygon to spline - Add parameter precision setting the maximum
+ distance between two points when calculating the spline - some cleanup
+
+2011-01-20 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: Use cubic Bezier
+ spline instead of simple polygon to define masks
+
2011-01-16 j-b-m <jb@kdenlive.org>
* src/modules/plus/transition_affine.c: Add always_active property to affine
transition.
+2011-01-16 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: Add parameter
+ invert
+
+ * src/modules/rotoscoping/Makefile, src/modules/rotoscoping/cJSON.c,
+ src/modules/rotoscoping/cJSON.h,
+ src/modules/rotoscoping/filter_rotoscoping.c: Rotoscoping: Add support for
+ simple keyframes - current limits: - number of points has to be equal for all
+ keyframes - points have to be in "correct" order (1. point in 1. kf will be
+ moved to 1. point in 2. kf, ...) - the parameter "polygon" is now formated
+ using json: - no keyframes: polygon="[[x,y], [x,y], ...]" - keyframes:
+ polygon= '{ "framepos1" : [[x,y], [x,y], ...], "framepos2" : [[x,y], [x,y],
+ ...], ...}'
+
+2011-01-15 Till Theato <root@ttill.de>
+
+ * src/modules/rotoscoping/filter_rotoscoping.c: rotoscoping filter: add modes
+ - rgb (everything but polygon black, default) - alpha (polygon alpha value =
+ 255, the rest = 0) - mask (polygon white, the rest black)
+
+ * src/modules/rotoscoping/Makefile, src/modules/rotoscoping/factory.c,
+ src/modules/rotoscoping/filter_rotoscoping.c: Add rotoscoping filter (WIP):
+ It hides everything not in the polygon defined by the vertices given through
+ the "polygon" parameter
+
2011-01-11 Dan Dennedy <dan@dennedy.org>
* src/modules/plus/transition_affine.c: fix compiler warning