package com.googlecode.mp4parser.muxformats;
import org.mp4parser.muxer.Movie;
import org.mp4parser.muxer.builder.DefaultMp4Builder;
import org.mp4parser.muxer.tracks.ttml.TtmlTrackImpl;
import org.w3c.dom.Document;
import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.xpath.XPathExpressionException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.Collections;
/**
* Created by user on 19.08.2014.
*/
public class MuxAacH264SMPTE {
public static void main(String[] args) throws ParserConfigurationException, SAXException, XPathExpressionException, IOException, URISyntaxException {
Movie m = new Movie();
/* m.addTrack(
new SMPTETTTrackImpl(
new File("C:\\dev\\mp4parser-github\\ttml-example\\subtitle_5_0.xml"),
new File("C:\\dev\\mp4parser-github\\ttml-example\\subtitle_5_1.xml"),
new File("C:\\dev\\mp4parser-github\\ttml-example\\subtitle_5_2.xml")));*/
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
Document d = dbf.newDocumentBuilder().parse("C:\\dev\\mp4parser-github\\ttml-example\\subtitle_3_0.xml");
m.addTrack(
new TtmlTrackImpl("some subtile", Collections.singletonList(d)));
DefaultMp4Builder builder = new DefaultMp4Builder();
builder.build(m).writeContainer(new FileOutputStream("output.mp4").getChannel());
}
}