package com.googlecode.mp4parser; import org.mp4parser.Container; import org.mp4parser.muxer.Movie; import org.mp4parser.muxer.Track; import org.mp4parser.muxer.builder.DefaultMp4Builder; import org.mp4parser.muxer.container.mp4.MovieCreator; import org.mp4parser.muxer.tracks.ReplaceSampleTrack; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.nio.ByteBuffer; import java.nio.channels.FileChannel; /** * Replaces some samples. */ public class ReplaceSomeSamples { public static void main(String[] args) throws IOException { String audioEnglish = RemoveSomeSamplesExample.class.getProtectionDomain().getCodeSource().getLocation().getFile() + "/count-english-audio.mp4"; Movie originalMovie = MovieCreator.build(audioEnglish); Track audio = originalMovie.getTracks().get(0); Movie nuMovie = new Movie(); nuMovie.addTrack(new ReplaceSampleTrack( new ReplaceSampleTrack( new ReplaceSampleTrack( audio, 25, ByteBuffer.allocate(5)), 27, ByteBuffer.allocate(5)), 29, ByteBuffer.allocate(5))); Container out = new DefaultMp4Builder().build(nuMovie); FileOutputStream fos = new FileOutputStream(new File("output.mp4")); FileChannel fc = fos.getChannel(); out.writeContainer(fc); fos.close(); } }