X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmiracle%2Fmiracle_unit.c;h=370eb11e40eaff0c26ace6d06684462f48037b7d;hb=222313cf587e194a130a82725a77d76ce14f2953;hp=2eca0d25d7860ac1a29d42619e2505f03447e28e;hpb=f00476101550ec7d8e863f6516aa83bc1b524570;p=melted diff --git a/src/miracle/miracle_unit.c b/src/miracle/miracle_unit.c index 2eca0d2..370eb11 100644 --- a/src/miracle/miracle_unit.c +++ b/src/miracle/miracle_unit.c @@ -266,13 +266,13 @@ valerie_error_code miracle_unit_load( miracle_unit unit, char *clip, int32_t in, if ( instance != NULL ) { - clear_unit( unit ); mlt_properties properties = unit->properties; mlt_playlist playlist = mlt_properties_get_data( properties, "playlist", NULL ); - mlt_consumer consumer = mlt_properties_get_data( unit->properties, "consumer", NULL ); - mlt_consumer_purge( consumer ); + int original = mlt_producer_get_playtime( MLT_PLAYLIST_PRODUCER( playlist ) ); mlt_playlist_append_io( playlist, instance, in, out ); + mlt_playlist_remove_region( playlist, 0, original ); miracle_log( LOG_DEBUG, "loaded clip %s", clip ); + update_generation( unit ); miracle_unit_status_communicate( unit ); mlt_producer_close( instance ); return valerie_ok; @@ -464,6 +464,8 @@ int miracle_unit_transfer( miracle_unit dest_unit, miracle_unit src_unit ) mlt_playlist_append_io( dest_playlist, info.producer, info.frame_in, info.frame_out ); } + update_generation( dest_unit ); + mlt_playlist_close( tmp_playlist ); return 0;