public void setTags(Vector<DegreeValue> tags) {
   if (write_extended_info) {
     // remove existing tags
     int s = 1;
     String identifier = TagUtil.getTagTagId(s).toUpperCase();
     while (tag.hasField(identifier)) {
       tag.set(new OggTagField(identifier, ""));
       ++s;
       identifier = TagUtil.getTagTagId(s).toUpperCase();
     }
     // set tags
     for (s = 0; s < tags.size(); ++s) {
       String tagName = tags.get(s).getName();
       float degree = tags.get(s).getPercentage();
       identifier = TagUtil.getTagTagId(s + 1);
       tag.set(new OggTagField(identifier.toUpperCase(), tagName));
       identifier = TagUtil.getTagTagDegree(s + 1);
       tag.set(new OggTagField(identifier.toUpperCase(), String.valueOf(degree)));
     }
   }
 }