--- Quote Start ---
Nor will anyone else likely be able to figure out why is was necessary since you haven't posted your entire design (both the 'working' and the 'not working'). Synchronizing signals to a clock is necessary when asynchronous signals or signals from a different clock domain are used with synchronous logic, but the original code you posted has no clock so that wouldn't be the case...unless you haven't posted something that is relevant to the design. As an example, it is not even clear how your samples have morphed into a 'left' and a 'right'.
Kevin
--- Quote End ---
Yeah i guess it makes sense. I creates a serial in parallel out which frames the serial stream from the CODEC out and extracts left and right.
Kevin, thanks very much for your time and help on this :-)
Now i can move on with the project