/** * Creates a 'tfra' - track fragment random access box for the given track with the isoFile. * The tfra contains a map of random access points with time as key and offset within the isofile * as value. * * @param track the concerned track * @return a track fragment random access box. */ protected Box createTfra(StreamingTrack track) { TrackFragmentRandomAccessBox tfra = new TrackFragmentRandomAccessBox(); tfra.setVersion(1); // use long offsets and times long[] offsets = tfraOffsets.get(track); long[] times = tfraTimes.get(track); List<TrackFragmentRandomAccessBox.Entry> entries = new ArrayList<TrackFragmentRandomAccessBox.Entry>(times.length); for (int i = 0; i < times.length; i++) { entries.add(new TrackFragmentRandomAccessBox.Entry(times[i], offsets[i], 1, 1, 1)); } tfra.setEntries(entries); tfra.setTrackId(track.getTrackExtension(TrackIdTrackExtension.class).getTrackId()); return tfra; }
TrackFragmentRandomAccessBox tfra = new TrackFragmentRandomAccessBox(); tfra.setVersion(1); // use long offsets and times List<TrackFragmentRandomAccessBox.Entry> offset2timeEntries = new LinkedList<TrackFragmentRandomAccessBox.Entry>();
TrackFragmentRandomAccessBox tfra = new TrackFragmentRandomAccessBox(); tfra.setVersion(1); // use long offsets and times List<TrackFragmentRandomAccessBox.Entry> offset2timeEntries = new LinkedList<TrackFragmentRandomAccessBox.Entry>();