Краткий ответ, нет.
Может быть возможно сделать это с необработанным SAM, а затем преобразовать его обратно в BAM. Недавно я писал C ++ API для BAM и столкнулся с этой проблемой самостоятельно. Проблема заключается в том, что базовые структуры c, представляющие эту информацию, плотно упакованы в байты и занимают определенный объем памяти. Иногда у них может быть немного больше, чем нужно, но иногда у них есть только правильное количество. Добавление к этим структурам в большинстве случаев будет превышать доступную для них память.
Итак, на вашем месте я бы выписал новый файл SAM с вашими дополнительными тегами и преобразовал бы его в BAM с помощью samtools