<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>Le 19 août 09 à 21:12, Niles Bindel a écrit :</div><br class="Apple-interchange-newline"><blockquote type="cite">Just to ensure we are all on the same page, let me reiterate the issue I am trying to resolve.  <br><br>Basically, I'm trying to fix an issue with the playlist not automatically playing the next item in the playlist after completing playback of the currently playing item.  This had been working fine in previous versions of VLC that were in existence prior to the patch I mentioned above.  When I looked into the issue, I found that there was no longer any code in place to accommodate this automatic transitioning ability as there was in the previous versions due to the switch to using a MediaList instead of the Playlist.  I tried to resolve this issue by using the existing MediaListPlayer, however, as I describe in more detail here (<a href="http://mailman.videolan.org/pipermail/vlc-devel/2009-August/064366.html">http://mailman.videolan.org/pipermail/vlc-devel/2009-August/064366.html</a>), I ran into a threading deadlock whenever the currently playing item reached its end and tried to move onto the next media list item.  Ultimately, the deadlock is caused by an event callback trying to delete itself.<br> <br>The simplest test case to replicate this issue would be to create a valid media player, media list, and media list player.  Add two short video files to a media list, set the media list and player for the media list player, start playback and the deadlock will occur as soon as the end of the first file is done playing.  <br><font class="Apple-style-span" color="#000000"><font class="Apple-style-span" color="#144FAE"><br></font></font></blockquote></div><div><div><span class="Apple-style-span" style="font-size: 12px; ">Hi,</span></div><div><br></div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0px; ">Yes our issues are a little different, I think your question was the opportunity to discuss of the media_list_player use, </span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0px; ">I apologies for diverging on my playlist parsing problem.     </span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0px; ">Our problems are somehow related as they deal with the plugin’s playlist. </span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0px; ">And I’m very interested in the way you propose to solve the “switch to next item” issue.</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span class="Apple-style-span" style="font-size: medium; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">For me the less intrusive correction to both issues would be a clean callback on “Once item has ended” somewhere in the plugin :  I would take back the subitems, you would switch to next item.</div><div><br></div></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">I agree with you but rewriting this playlist again wouldn’t be at our scale the best solution. We can’t pass over the huge amount of functional code that we have there. </span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">I am quite new to vlc and I can just point out what I see to more experienced VLC developers,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">yes a centralized media_list_player would solve the problem,  it will also be more esthetic and maintainable but it will require a LOT of work.</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">The media_list_player was perfect to solve this issue as it was already coded but it suffered from some problems which are on their way to be solved,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">replacing the QT playlist with this would be a total waste. ActiveX and mozilla plugin would need this because they are both "lightweight" implementation</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">of playlist players with redundant code.</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><span style="letter-spacing: 0.0px"></span><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">I think a “hand-fixing” of the plugin with some patches might be sufficient for the moment at least to make the mozilla plugin functional.</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0.0px">And after tests // discussions, switching the plugins to media_list_player may be conceivable.</span></div><div><br></div></div><div><br></div></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0px; ">Best regards,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><br><span style="letter-spacing: 0px; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><br><span style="letter-spacing: 0px; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><span style="letter-spacing: 0px; ">Jean-Baptiste BESNARD</span></div></div></div></body></html>