X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmodules%2Fgtk2%2Fproducer_pixbuf.c;h=4e27d658f047e4d91d3430d7fefd119a9bb16bae;hb=cc529cc40228368ad022902a9c8b550e425a6150;hp=a5c559c21c6febf0be434b3ed4a9af3e35c088a5;hpb=eff9702ae2fe96292eab69ba0065764c83cc2a96;p=melted diff --git a/src/modules/gtk2/producer_pixbuf.c b/src/modules/gtk2/producer_pixbuf.c index a5c559c..4e27d65 100644 --- a/src/modules/gtk2/producer_pixbuf.c +++ b/src/modules/gtk2/producer_pixbuf.c @@ -18,7 +18,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "producer_pixbuf.h" +#include #include #include @@ -108,6 +108,7 @@ static void refresh_image( mlt_frame frame, int width, int height ) // Get the original position of this frame mlt_position position = mlt_properties_get_position( properties, "pixbuf_position" ); + position += mlt_producer_get_in( producer ); // Image index int image_idx = ( int )floor( ( double )position / ttl ) % this->count; @@ -254,7 +255,7 @@ static void refresh_image( mlt_frame frame, int width, int height ) if ( update_cache ) { - mlt_frame cached = mlt_frame_init( ); + mlt_frame cached = mlt_frame_init( MLT_PRODUCER_SERVICE( producer ) ); mlt_properties cached_props = MLT_FRAME_PROPERTIES( cached ); mlt_properties_set_int( cached_props, "width", this->width ); mlt_properties_set_int( cached_props, "height", this->height ); @@ -417,7 +418,7 @@ static int producer_get_frame( mlt_producer producer, mlt_frame_ptr frame, int i if ( stat( full, &buf ) == 0 ) { sprintf( key, "%d", keyvalue ++ ); - mlt_properties_set( this->filenames, "0", full ); + mlt_properties_set( this->filenames, key, full ); gap = 0; } else @@ -448,7 +449,7 @@ static int producer_get_frame( mlt_producer producer, mlt_frame_ptr frame, int i } // Generate a frame - *frame = mlt_frame_init( ); + *frame = mlt_frame_init( MLT_PRODUCER_SERVICE( producer ) ); if ( *frame != NULL && this->count > 0 ) {