[vlc-devel] commit: Add callback to spu-es from the input. (Jean-Paul Saman )

Jean-Baptiste Kempf jb at videolan.org
Thu Jun 19 18:53:03 CEST 2008

On Thu, Jun 19, 2008 at 12:01:44PM +0200, Felix Paul Kühne wrote :
> On 19.06.2008, at 11:48, Remi Denis-Courmont wrote:
> > Changing a value from another thread without barrier nor atomicity...
> >
> > On OSX, you may afford to do that, because you have a well-known very
> > finite set of CPU architectures, such that you can assume that  
> > setting a
> > bool or an integer might just work.
> >
> > On portable code, such as the Qt4 interface, it is simply wrong. In  
> > fact,
> > it probably fails on real multiprocessors. Yes, there are many such  
> > errors
> > in VLC. One easy way to find some is to grep for msleep (to the best  
> > of my
> > knowledge msleep is not a memory barrier).
> Alright, I agree to your points. However, please let people test this  
> code in the real world, meaning on *BSD, Linux and Win32 (plus  
> possibly OS X). If it works for them, let them use this code for 0.9.0  
> and lets fix it after 0.9.0. If it doesn't work as you predicted, it  
> needs to be fixed immediately of course.
> Fine for j-b and you release management-wise?

Well, I think Rémi has a point here. However, this is the way we have
done it in macosx intf, wx intf and Qt4 intf (zorglub, my master did it).
In fact, the Qt4 code is a bit better since it is faster (doing less
stuffs in a row, with different update functions) than wx.

At start, I failed to see what was wrong there, but well...
However, since the code has been done like that for a long time, I fail
to see it as a regression...

I and ILEoo want definitively to solve the issue, so I really welcome
patches, but input_manager.cpp is a "casse-tête" (as playlist_model.cpp,
and I almost didn't touch those code for this obvious reason).


Jean-Baptiste Kempf

More information about the vlc-devel mailing list