Search in sources :

Example 11 with Smil

use of org.opencastproject.smil.entity.api.Smil in project opencast by opencast.

the class SmilServiceImplTest method testFromXml.

/**
 * Test of fromXml methods, of class SmilServiceImpl.
 */
@Test
public void testFromXml() throws Exception {
    SmilResponse smilResponse = smilService.fromXml(TEST_SMIL);
    assertNotNull(smilResponse.getSmil());
    Smil smil = smilResponse.getSmil();
    // test head
    assertSame(2, smil.getHead().getParamGroups().size());
    // test body
    assertSame(2, smil.getBody().getMediaElements().size());
    assertTrue(smil.getBody().getMediaElements().get(0) instanceof SmilMediaParallelImpl);
    assertTrue(smil.getBody().getMediaElements().get(1) instanceof SmilMediaParallelImpl);
    SmilMediaContainer par = (SmilMediaContainer) smil.getBody().getMediaElements().get(0);
    assertSame(2, par.getElements().size());
    assertTrue(par.getElements().get(0) instanceof SmilMediaVideoImpl);
    assertTrue(par.getElements().get(1) instanceof SmilMediaAudioImpl);
}
Also used : SmilMediaVideoImpl(org.opencastproject.smil.entity.media.element.SmilMediaVideoImpl) SmilResponse(org.opencastproject.smil.api.SmilResponse) SmilMediaAudioImpl(org.opencastproject.smil.entity.media.element.SmilMediaAudioImpl) Smil(org.opencastproject.smil.entity.api.Smil) SmilMediaParallelImpl(org.opencastproject.smil.entity.media.container.SmilMediaParallelImpl) SmilMediaContainer(org.opencastproject.smil.entity.media.container.api.SmilMediaContainer) Test(org.junit.Test)

Example 12 with Smil

use of org.opencastproject.smil.entity.api.Smil in project opencast by opencast.

the class SmilResponseImplTest method testGetEntitiesCount.

/**
 * Test of getEntitiesCount method, of class SmilResponseImpl.
 */
@Test
public void testGetEntitiesCount() {
    Smil smil = new SmilImpl();
    SmilResponse response = new SmilResponseImpl(smil);
    assertSame(0, response.getEntitiesCount());
    response = new SmilResponseImpl(smil, smil.getBody());
    assertSame(1, response.getEntitiesCount());
    response = new SmilResponseImpl(smil, new SmilObject[] { smil.getHead(), smil.getBody() });
    assertSame(2, response.getEntitiesCount());
}
Also used : SmilResponse(org.opencastproject.smil.api.SmilResponse) SmilImpl(org.opencastproject.smil.entity.SmilImpl) SmilObject(org.opencastproject.smil.entity.api.SmilObject) Smil(org.opencastproject.smil.entity.api.Smil) Test(org.junit.Test)

Example 13 with Smil

use of org.opencastproject.smil.entity.api.Smil in project opencast by opencast.

the class SmilResponseImplTest method testGetEntity.

/**
 * Test of getEntity method, of class SmilResponseImpl.
 */
@Test
public void testGetEntity() throws Exception {
    Smil smil = new SmilImpl();
    SmilResponse response = new SmilResponseImpl(smil);
    try {
        response.getEntity();
        fail("getEntity should fail, if entity count is zero");
    } catch (SmilException ex) {
    }
    response = new SmilResponseImpl(smil, smil.getBody());
    try {
        assertSame(smil.getBody(), response.getEntity());
        assertSame(1, response.getEntities().length);
        assertSame(smil.getBody(), response.getEntities()[0]);
    } catch (SmilException ex) {
        fail("getEntity should return the entity");
    }
    response = new SmilResponseImpl(smil, new SmilObject[] { smil.getHead(), smil.getBody() });
    try {
        response.getEntity();
        fail("get entity should fail if there are more then one entities set.");
    } catch (SmilException ex) {
    }
}
Also used : SmilResponse(org.opencastproject.smil.api.SmilResponse) SmilImpl(org.opencastproject.smil.entity.SmilImpl) SmilObject(org.opencastproject.smil.entity.api.SmilObject) Smil(org.opencastproject.smil.entity.api.Smil) SmilException(org.opencastproject.smil.api.SmilException) Test(org.junit.Test)

Example 14 with Smil

use of org.opencastproject.smil.entity.api.Smil in project opencast by opencast.

the class SmilImpl method fromXML.

/**
 * Unmarshall a SMIL document from string.
 *
 * @param xml {@link Smil} document as xml
 * @return parsed {@link Smil}
 * @throws JAXBException if unmarshalling fail
 */
public static Smil fromXML(String xml) throws JAXBException {
    JAXBContext jctx = JAXBContext.newInstance(SmilImpl.class);
    Unmarshaller unmarshaller = jctx.createUnmarshaller();
    return (Smil) unmarshaller.unmarshal(new StringReader(xml));
}
Also used : StringReader(java.io.StringReader) JAXBContext(javax.xml.bind.JAXBContext) Smil(org.opencastproject.smil.entity.api.Smil) Unmarshaller(javax.xml.bind.Unmarshaller)

Example 15 with Smil

use of org.opencastproject.smil.entity.api.Smil in project opencast by opencast.

the class SmilImpl method fromXML.

/**
 * Unmarshall a SMIL document from file.
 *
 * @param xmlFile {@link Smil} document as file
 * @return parsed {@link Smil}
 * @throws JAXBException if unmarshalling fail
 */
public static Smil fromXML(File xmlFile) throws JAXBException {
    JAXBContext jctx = JAXBContext.newInstance(SmilImpl.class);
    Unmarshaller unmarshaller = jctx.createUnmarshaller();
    return (Smil) unmarshaller.unmarshal(xmlFile);
}
Also used : JAXBContext(javax.xml.bind.JAXBContext) Smil(org.opencastproject.smil.entity.api.Smil) Unmarshaller(javax.xml.bind.Unmarshaller)

Aggregations

Smil (org.opencastproject.smil.entity.api.Smil)20 SmilResponse (org.opencastproject.smil.api.SmilResponse)11 Test (org.junit.Test)8 SmilException (org.opencastproject.smil.api.SmilException)7 URI (java.net.URI)5 Catalog (org.opencastproject.mediapackage.Catalog)5 MediaPackage (org.opencastproject.mediapackage.MediaPackage)5 MediaPackageElementFlavor (org.opencastproject.mediapackage.MediaPackageElementFlavor)5 SmilImpl (org.opencastproject.smil.entity.SmilImpl)5 SmilMediaContainer (org.opencastproject.smil.entity.media.container.api.SmilMediaContainer)5 IOException (java.io.IOException)4 InputStream (java.io.InputStream)4 ArrayList (java.util.ArrayList)4 JAXBException (javax.xml.bind.JAXBException)4 Job (org.opencastproject.job.api.Job)4 Track (org.opencastproject.mediapackage.Track)4 SmilMediaObject (org.opencastproject.smil.entity.media.api.SmilMediaObject)4 SmilMediaElement (org.opencastproject.smil.entity.media.element.api.SmilMediaElement)4 File (java.io.File)3 SmilService (org.opencastproject.smil.api.SmilService)3