ResourceUUID resourceId = ResourceUUID.create(trackFileResource.getId(), repeat);
ResourceKey resourceKey = ResourceKey.create(currentSegmentUuid, currentSequenceUuid, currentSequenceType);
contextProvider.getResourceContext().initResource(resourceKey, resourceId);
UUID trackId = UUID.create(trackFileResource.getTrackFileId());
String assetPath = assetMap.getAsset(trackId);
if (assetPath == null) {
BigFraction editRate = ((trackFileResource.getEditRate() != null) && !trackFileResource.getEditRate().isEmpty())
? ConversionHelper.parseEditRate(trackFileResource.getEditRate()) : compositionEditRate;
contextProvider.getResourceContext().addResourceParameter(resourceKey, resourceId,
ResourceContextParameters.EDIT_RATE, ConversionHelper.toEditRate(editRate));
BigInteger startTimeEditUnit = trackFileResource.getEntryPoint() != null
? trackFileResource.getEntryPoint() : BigInteger.valueOf(0);
contextProvider.getResourceContext().addResourceParameter(resourceKey, resourceId,
ResourceContextParameters.START_TIME_EDIT_UNIT, startTimeEditUnit.toString());
if (trackFileResource.getSourceDuration() != null) {
durationEditUnit = trackFileResource.getSourceDuration();
} else {
durationEditUnit = trackFileResource.getIntrinsicDuration().subtract(startTimeEditUnit);
BigInteger repeatCount = trackFileResource.getRepeatCount() != null
? trackFileResource.getRepeatCount() : BigInteger.ONE;
contextProvider.getResourceContext().addResourceParameter(resourceKey, resourceId,
ResourceContextParameters.REPEAT_COUNT, repeatCount.toString());
String essenceDescId = trackFileResource.getSourceEncoding();