protected ParsableBox createTkhd(Movie movie, Track track) { TrackHeaderBox tkhd = new TrackHeaderBox(); tkhd.setVersion(1); tkhd.setFlags(7); // enabled, in movie, in previe, in poster tkhd.setAlternateGroup(track.getTrackMetaData().getGroup()); tkhd.setCreationTime(track.getTrackMetaData().getCreationTime()); // We need to take edit list box into account in trackheader duration // but as long as I don't support edit list boxes it is sufficient to // just translate media duration to movie timescale tkhd.setDuration(0);//no duration in moov for fragmented movies tkhd.setHeight(track.getTrackMetaData().getHeight()); tkhd.setWidth(track.getTrackMetaData().getWidth()); tkhd.setLayer(track.getTrackMetaData().getLayer()); tkhd.setModificationTime(getDate()); tkhd.setTrackId(track.getTrackMetaData().getTrackId()); tkhd.setVolume(track.getTrackMetaData().getVolume()); return tkhd; }
tkhd.setLayer(track.getTrackMetaData().getLayer()); tkhd.setModificationTime(new Date()); tkhd.setTrackId(track.getTrackMetaData().getTrackId());
protected ParsableBox createTkhd(Movie movie, Track track) { TrackHeaderBox tkhd = new TrackHeaderBox(); tkhd.setVersion(1); tkhd.setFlags(7); // enabled, in movie, in previe, in poster tkhd.setAlternateGroup(track.getTrackMetaData().getGroup()); tkhd.setCreationTime(track.getTrackMetaData().getCreationTime()); // We need to take edit list box into account in trackheader duration // but as long as I don't support edit list boxes it is sufficient to // just translate media duration to movie timescale tkhd.setDuration(0);//no duration in moov for fragmented movies tkhd.setHeight(track.getTrackMetaData().getHeight()); tkhd.setWidth(track.getTrackMetaData().getWidth()); tkhd.setLayer(track.getTrackMetaData().getLayer()); tkhd.setModificationTime(getDate()); tkhd.setTrackId(track.getTrackMetaData().getTrackId()); tkhd.setVolume(track.getTrackMetaData().getVolume()); return tkhd; }
protected Box createTkhd(Track track) { TrackHeaderBox tkhd = new TrackHeaderBox(); tkhd.setVersion(1); tkhd.setFlags(7); // enabled, in movie, in previe, in poster tkhd.setAlternateGroup(track.getTrackMetaData().getGroup()); tkhd.setCreationTime(track.getTrackMetaData().getCreationTime()); // We need to take edit list box into account in trackheader duration // but as long as I don't support edit list boxes it is sufficient to // just translate media duration to movie timescale if (track.getEdits().isEmpty()) { tkhd.setDuration(track.getDuration()); } else { long dur = 0; for (Edit edit : track.getEdits()) { dur += edit.getMediaTime() != -1 ? edit.getSegmentDuration() * track.getTrackMetaData().getTimescale() : 0; } tkhd.setDuration(dur); } tkhd.setHeight(track.getTrackMetaData().getHeight()); tkhd.setWidth(track.getTrackMetaData().getWidth()); tkhd.setLayer(track.getTrackMetaData().getLayer()); tkhd.setModificationTime(getDate()); tkhd.setTrackId(track.getTrackMetaData().getTrackId()); tkhd.setVolume(track.getTrackMetaData().getVolume()); return tkhd; }
tkhd.setLayer(track.getTrackMetaData().getLayer()); tkhd.setModificationTime(new Date()); tkhd.setTrackId(track.getTrackMetaData().getTrackId());