I have problem with one my BAMs---it appears to have invalid read groups.
Normally when I have such a problem, I remove all the read groups from the BAM header as follows:
samtools view -H your.bam | grep -v "^@RG" | samtools reheader - original.bam > new.bam
and then I would execute
AddOrReplaceReadGroups from Picard:
I have tried this, and there must still be reads with a read group in the optional tags
How to do I definitively remove all read groups from a BAM, including all of the reads?