Hi Dan,

I found out that the
commit e33dedb46c0e4786023e1fe0a618e3f4a35728ae (Improve stop handling in
mlt_consumer)
has a side effect to eof behaviour (see ticket
http://www.kdenlive.org/mantis/view.php?id=2870).

I can reproduce the hanging on reaching eof in mlt. The crazy sound is only
reproducable in kdenlive.

steps to reproduce:

bash# MLT_CONSUMER=sdl_preview melt movie.mov => on reaching eof --->
hanging and melt has to be killed

I guess there is a deadlock or so.

mlt_consumer.c:

/** Stop the consumer.
 *
 * \public \memberof mlt_consumer_s
 * \param self a consumer
 * \return true if there was an error
 */

int mlt_consumer_stop( mlt_consumer self )
{
// Return error if supplied invalid or stopped consumer.
if ( !self /*|| mlt_consumer_is_stopped( self )*/ ) <= Look at commment
return -1;

I commented the check mlt_consumer_is_stopped( self ) => works again.

I think there are conditions where the consumer says I'm "stopped" but
forcing/calling the  mlt_consumer_stop function is
needed in some circumstances for example pthread_cond_broadcasting or what
ever. I think you know it better!

Sorry I don't have to much time now for deeper investigation. I hope my
hints are enough for a solution.

regards

eddrog
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Kdenlive-devel mailing list
Kdenlive-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kdenlive-devel

Reply via email to