I have run some additional tests, and the problem now definitely appears to be solved. It seems that synchronizing on the getLock() object is the key to correcting the issue in hardware-rendering mode.
Also, after switching to the most recent version of jPCT, I have been unable to replicate the problem in software-rendering mode with or without synchronizing on the getLock() object. I am a little baffled why I experience the behavior in software-rendering mode at all with the older version of jPCT, since it appears to be a synchronization with the AWT dispatch thread, which shouldn't affect software-rendering
Looking at the test applet code, the only thing I can think of is that I didn't call setVisible( false ) on the GLCanvas bevore removing it from the applet, so perhaps the canvas was still sticking around or something
I've never had to do that before, though. Oh, well, I guess it is a non-issue now, since the problem seems to be gone with the new jPCT version.
I re-uploaded the music video applet with the ITextureEffect synchronization problem hopefully fixed. I hate to subject everyone to more of Britney Spears, but could I get some folks to run the applet again to make sure the random flashing blue shapes are gone now? This applet still has several other problems, but it was the best/worst example I had of the ITextureEffect synchronization issue:
http://www.paulscode.com/demos/jpct/VideoTexture/