// first audio-packet data
this.initialDelta = virtualTime.getTime()
- this.startedSessionTimeDate.getTime();
FlvRecordingMetaDelta flvRecordingMetaDelta = new FlvRecordingMetaDelta();
flvRecordingMetaDelta.setDeltaTime(this.initialDelta);
flvRecordingMetaDelta
.setFlvRecordingMetaDataId(this.flvRecordingMetaDataId);
flvRecordingMetaDelta.setTimeStamp(0);
flvRecordingMetaDelta.setDebugStatus("INIT AUDIO");
flvRecordingMetaDelta.setIsStartPadding(true);
flvRecordingMetaDelta.setIsEndPadding(false);
flvRecordingMetaDelta.setDataLengthPacket(data.limit());
flvRecordingMetaDelta
.setReceivedAudioDataLength(this.byteCount);
flvRecordingMetaDelta
.setStartTime(this.startedSessionTimeDate);
flvRecordingMetaDelta.setPacketTimeStamp(streampacket
.getTimestamp());
Long deltaTimeStamp = virtualTime.getTime()
- this.startedSessionTimeDate.getTime();
// this.duration = Math.max(this.duration, 0 +
// this.writer.getOffset());
flvRecordingMetaDelta.setDuration(0);
Long missingTime = deltaTimeStamp - 0;
flvRecordingMetaDelta.setMissingTime(missingTime);
flvRecordingMetaDelta.setCurrentTime(virtualTime);
flvRecordingMetaDelta.setDeltaTimeStamp(deltaTimeStamp);
flvRecordingMetaDelta.setStartTimeStamp(startTimeStamp);
flvRecordingMetaDeltaDao
.addFlvRecordingMetaDelta(flvRecordingMetaDelta);
// That will be not bigger then long value
this.startTimeStamp = (streampacket.getTimestamp());
// We have to set that to bypass the initial delta
// lastTimeStamp = startTimeStamp;
}
this.lastStreamPacketTimeStamp = streampacket.getTimestamp();
timeStamp -= this.startTimeStamp;
long deltaTime = 0;
if (lastTimeStamp == -1) {
deltaTime = 0; // Offset at the beginning is calculated
// above
} else {
deltaTime = timeStamp - lastTimeStamp;
}
Long preLastTimeStamp = Long
.parseLong(lastTimeStamp.toString());
lastTimeStamp = timeStamp;
if (deltaTime > 75) {
FlvRecordingMetaDelta flvRecordingMetaDelta = new FlvRecordingMetaDelta();
flvRecordingMetaDelta.setDeltaTime(deltaTime);
flvRecordingMetaDelta
.setFlvRecordingMetaDataId(this.flvRecordingMetaDataId);
flvRecordingMetaDelta.setTimeStamp(timeStamp);
flvRecordingMetaDelta.setDebugStatus("RUN AUDIO");
flvRecordingMetaDelta.setIsStartPadding(false);
flvRecordingMetaDelta.setLastTimeStamp(preLastTimeStamp);
flvRecordingMetaDelta.setIsEndPadding(false);
flvRecordingMetaDelta.setDataLengthPacket(data.limit());
flvRecordingMetaDelta
.setReceivedAudioDataLength(this.byteCount);
flvRecordingMetaDelta
.setStartTime(this.startedSessionTimeDate);
flvRecordingMetaDelta.setPacketTimeStamp(streampacket
.getTimestamp());
Date current_date = new Date();
Long deltaTimeStamp = current_date.getTime()
- this.startedSessionTimeDate.getTime();
this.duration = Math.max(this.duration, timeStamp
+ this.writer.getOffset());
flvRecordingMetaDelta.setDuration(this.duration);
Long missingTime = deltaTimeStamp - timeStamp;
flvRecordingMetaDelta.setMissingTime(missingTime);
flvRecordingMetaDelta.setCurrentTime(current_date);
flvRecordingMetaDelta.setDeltaTimeStamp(deltaTimeStamp);
flvRecordingMetaDelta.setStartTimeStamp(startTimeStamp);
flvRecordingMetaDeltaDao
.addFlvRecordingMetaDelta(flvRecordingMetaDelta);
}