private void encodeSoundInfo(SoundInfo info, SwfEncoder w) { w.writeUBits(0, 2); // reserved w.writeBit(info.syncStop); w.writeBit(info.syncNoMultiple); w.writeBit(info.records != null); w.writeBit(info.loopCount != SoundInfo.UNINITIALIZED); w.writeBit(info.outPoint != SoundInfo.UNINITIALIZED); w.writeBit(info.inPoint != SoundInfo.UNINITIALIZED); if (info.inPoint != SoundInfo.UNINITIALIZED) { w.write32((int) info.inPoint); } if (info.outPoint != SoundInfo.UNINITIALIZED) { w.write32((int) info.outPoint); } if (info.loopCount != SoundInfo.UNINITIALIZED) { w.writeUI16(info.loopCount); } if (info.records != null) { w.writeUI8(info.records.Length); for (int k = 0; k < info.records.Length; k++) { w.write64(info.records[k]); } } }