On Thursday 13 March 2008 09:01:53 pm Maarten Lankhorst wrote:
If read from a file source, ID3 v2 tags might be incorrectly parsed by the head_check. This patch skips the whole tag altogether.
I'm not sure this is completely correct. The main splitter function detects the presense of an MP3 header at the start of a sample it's sending to set the sample's sync point attribute. Since the ID3 tag is not a sync point, this causes the first sample to not be set as a sync point, and it would be unlikely that a following sample would, under normal circumstances, contain an MP3 header at the start either. This could cause sensitive codecs to never find a sync point.
ACMWrapper wouldn't be affected as it doesn't handle sync points, but other native codecs (which do work in Wine) could. Additionally, winemp3.acm may be affected by the ID3 tag as it doesn't seem to have code to handle it either.