public long getDataSize() { return this.rcRiffDataChunk.getChunkSize(); }
@Override public long write(RandomAccessFile out) throws IOException, RcBwfException { // Write chunk id and chunk size long chunkHeaderSize = super.write(out); in.seek(this.getDataPointer()); byte buffer[] = new byte[1024]; int count; long bytesLeft = this.getChunkSize(); while (bytesLeft > 0) { count = this.in.read(buffer, 0, (int) Math.min((long) buffer.length, bytesLeft)); bytesLeft -= count; out.write(buffer, 0, count); } return chunkHeaderSize + this.getChunkSize(); }
@Override public long read(RandomAccessFile in, long ptr, long chunkSize) throws IOException { this.setPtr(ptr); this.setChunkSize(chunkSize); this.setDataInput(in); this.setDataPointer(this.in.getFilePointer()); this.in.seek(this.in.getFilePointer() + this.getChunkSize()); return this.getChunkSize(); }
public void calculateMd5Checksum() throws IOException { this.in.seek(this.getDataPointer()); this.setCalculatedMd5(this.calculateMd5Checksum(this.in, this.getChunkSize())); }
public XMLGregorianCalendar getXmlDuration() throws DatatypeConfigurationException { long dataSize = this.getRcRiffDataChunk().getChunkSize(); long blockSize = this.getRcRiffFmtChunk().getBlockAlign(); long numSampleFrames = dataSize / blockSize; long samplesPerSec = this.getRcRiffFmtChunk().getSamplesPerSec(); long ms = (long) (numSampleFrames / (samplesPerSec / 1000D)); int hours = (int) (ms / (60 * 60 * 1000)); ms -= hours * 60 * 60 * 1000; int min = (int) (ms / (60 * 1000)); ms -= min * 60 * 1000; int sec = (int) (ms / 1000); ms -= sec * 1000; XMLGregorianCalendar duration = DatatypeFactory.newInstance().newXMLGregorianCalendarTime(hours, min, sec, (int) ms, DatatypeConstants.FIELD_UNDEFINED); return duration; }
rcRiffBwf.getRcRiffFmtChunk().getBitsPerSample(), rcRiffBwf.getRcRiffFmtChunk().getBlockAlign(), (rcRiffBwf.getRcRiffDataChunk().getChunkSize() / rcRiffBwf.getRcRiffFmtChunk().getBlockAlign()) / (rcRiffBwf.getRcRiffFmtChunk().getSamplesPerSec() / 1000), observer, objIdx,
rcRiffBwf.getRcRiffFmtChunk().getBitsPerSample(), rcRiffBwf.getRcRiffFmtChunk().getBlockAlign(), (rcRiffBwf.getRcRiffDataChunk().getChunkSize() / rcRiffBwf.getRcRiffFmtChunk().getBlockAlign()) / (rcRiffBwf.getRcRiffFmtChunk().getSamplesPerSec() / 1000), observer, objIndex,
long dataSize = rcRiffBwf.getRcRiffDataChunk().getChunkSize(); int blockSize = rcRiffBwf.getRcRiffFmtChunk().getBlockAlign(); int channels = rcRiffBwf.getRcRiffFmtChunk().getChannels();
long dataSize = rcRiffBwf.getRcRiffDataChunk().getChunkSize(); int blockSize = rcRiffBwf.getRcRiffFmtChunk().getBlockAlign(); int channels = rcRiffBwf.getRcRiffFmtChunk().getChannels();
long dataSize = rcRiffBwf.getRcRiffDataChunk().getChunkSize(); long blockSize = rcRiffBwf.getRcRiffFmtChunk().getBlockAlign(); long channels = rcRiffBwf.getRcRiffFmtChunk().getChannels();