/** * Adds a sequence (virtual track) parameter. * * @param seqType sequence type * @param uuid sequence UUID. * @param paramName a enum defining the parameter name. * @param paramValue parameter value * @return this sequence template parameters context. */ public SequenceTemplateParameterContext addSequenceParameter(SequenceType seqType, SequenceUUID uuid, SequenceContextParameters paramName, String paramValue) { initSequence(seqType, uuid); doAddParameter(seqType, uuid, paramName, paramValue); return this; }
private void processSequence() { // 1. check that the sequence type is known if (currentSequenceType == null) { throw new ConversionException(String.format("Sequence '%s': Unknown sequence type", currentSequence.getId())); } // 2. init the sequence contextProvider.getSequenceContext().initSequence(currentSequenceType, currentSequenceUuid); // 3. process all resources within the sequence and segment and fill the Resource context currentSequence.getResourceList().getResource().forEach(this::processResource); }
private void processSequence() { // 1. check that the sequence type is known if (currentSequenceType == null) { throw new ConversionException(String.format("Sequence '%s': Unknown sequence type", currentSequence.getId())); } // 2. init the sequence contextProvider.getSequenceContext().initSequence(currentSequenceType, currentSequenceUuid); // 3. process all resources within the sequence and segment and fill the Resource context currentSequence.getResourceList().getResource().forEach(this::processResource); }
private void prepareCplVirtualTracksWithChannels(TemplateParameterContextProvider contextProvider, Map<String, Integer> channelsForTrack) { SequenceTemplateParameterContext sequenceContext = contextProvider.getSequenceContext(); channelsForTrack.forEach( (uuid, channels) -> { sequenceContext.initSequence(SequenceType.AUDIO, SequenceUUID.create(uuid)); // as in test-audiomap.xml contextProvider.getSequenceContext().addSequenceParameter( SequenceType.AUDIO, SequenceUUID.create(uuid), SequenceContextParameters.CHANNELS_NUM, String.valueOf(channels)); } ); }
@SafeVarargs private final void prepareCplVirtualTracksWithChannels(TemplateParameterContextProvider contextProvider, SimpleEntry<String, Integer>... entries) { SequenceTemplateParameterContext sequenceContext = contextProvider.getSequenceContext(); Stream.of(entries).forEach((e) -> { sequenceContext.initSequence(SequenceType.AUDIO, SequenceUUID.create(e.getKey())); // as in test-audiomap.xml contextProvider.getSequenceContext().addSequenceParameter( SequenceType.AUDIO, SequenceUUID.create(e.getKey()), SequenceContextParameters.CHANNELS_NUM, String.valueOf(e.getValue())); } ); } }
@Test public void testInitDefaultSequenceParameters() throws Exception { TemplateParameterContextProvider contextProvider = createDefaultContextProvider(); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:1111")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:2222")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:3333")); assertDefaultSequenceParameters(contextProvider, 0, SequenceUUID.create("urn:uuid:3333"), SequenceType.VIDEO); assertDefaultSequenceParameters(contextProvider, 1, SequenceUUID.create("urn:uuid:1111"), SequenceType.VIDEO); assertDefaultSequenceParameters(contextProvider, 0, SequenceUUID.create("urn:uuid:2222"), SequenceType.AUDIO); assertDefaultSequenceParameters(contextProvider, 1, SequenceUUID.create("urn:uuid:3333"), SequenceType.AUDIO); }
@Test public void testInitSequenceNoDuplicate() throws Exception { TemplateParameterContextProvider contextProvider = createDefaultContextProvider(); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:1111")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:2222")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:2222")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:2222")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:1111")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:4444")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:2222"));
@Test public void testInitSequenceOrder() throws Exception { TemplateParameterContextProvider contextProvider = createDefaultContextProvider(); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:1111")); contextProvider.getSequenceContext().initSequence(SequenceType.VIDEO, SequenceUUID.create("urn:uuid:2222")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:2222")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:3333")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:1111")); contextProvider.getSequenceContext().initSequence(SequenceType.AUDIO, SequenceUUID.create("urn:uuid:4444")); assertEquals(3, contextProvider.getSequenceContext().getSequenceCount(SequenceType.VIDEO)); assertArrayEquals( new SequenceUUID[]{ SequenceUUID.create("urn:uuid:3333"), SequenceUUID.create("urn:uuid:1111"), SequenceUUID.create("urn:uuid:2222")}, contextProvider.getSequenceContext().getUuids(SequenceType.VIDEO).toArray()); assertEquals(4, contextProvider.getSequenceContext().getSequenceCount(SequenceType.AUDIO)); assertArrayEquals( new SequenceUUID[]{ SequenceUUID.create("urn:uuid:2222"), SequenceUUID.create("urn:uuid:3333"), SequenceUUID.create("urn:uuid:1111"), SequenceUUID.create("urn:uuid:4444")}, contextProvider.getSequenceContext().getUuids(SequenceType.AUDIO).toArray()); }
for (SequenceType seqType : sequenceTypes) { for (int i = 0; i < seqCount; i++) { sequenceContext.initSequence(seqType, getSequenceUuid(i, seqType));