public void save(final OutputBitStream os) throws IOException {
   final int numSounds = (this.m_soundIds != null) ? this.m_soundIds.length : 0;
   os.writeInt(numSounds);
   for (int i = 0; i < numSounds; ++i) {
     os.writeLong(this.m_soundIds[i]);
     os.writeByte(this.m_gains[i]);
   }
   os.writeBooleanBit(this.m_loop);
   os.writeInt(this.m_rollOffId);
   os.writeInt(this.m_fadeOutTime);
   os.writeBooleanBit(this.m_stopOnRemoveAps);
   os.writeInt(this.m_delay);
 }