summaryrefslogtreecommitdiff
path: root/isoparser/src/main/java/com/googlecode/mp4parser/authoring/builder/.svn/text-base/TwoSecondIntersectionFinder.java.svn-base
diff options
context:
space:
mode:
Diffstat (limited to 'isoparser/src/main/java/com/googlecode/mp4parser/authoring/builder/.svn/text-base/TwoSecondIntersectionFinder.java.svn-base')
-rw-r--r--isoparser/src/main/java/com/googlecode/mp4parser/authoring/builder/.svn/text-base/TwoSecondIntersectionFinder.java.svn-base86
1 files changed, 0 insertions, 86 deletions
diff --git a/isoparser/src/main/java/com/googlecode/mp4parser/authoring/builder/.svn/text-base/TwoSecondIntersectionFinder.java.svn-base b/isoparser/src/main/java/com/googlecode/mp4parser/authoring/builder/.svn/text-base/TwoSecondIntersectionFinder.java.svn-base
deleted file mode 100644
index 88aa4ab..0000000
--- a/isoparser/src/main/java/com/googlecode/mp4parser/authoring/builder/.svn/text-base/TwoSecondIntersectionFinder.java.svn-base
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Copyright 2012 Sebastian Annies, Hamburg
- *
- * Licensed under the Apache License, Version 2.0 (the License);
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.googlecode.mp4parser.authoring.builder;
-
-import com.coremedia.iso.boxes.TimeToSampleBox;
-import com.googlecode.mp4parser.authoring.Movie;
-import com.googlecode.mp4parser.authoring.Track;
-
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * This <code>FragmentIntersectionFinder</code> cuts the input movie in 2 second
- * snippets.
- */
-public class TwoSecondIntersectionFinder implements FragmentIntersectionFinder {
-
- protected long getDuration(Track track) {
- long duration = 0;
- for (TimeToSampleBox.Entry entry : track.getDecodingTimeEntries()) {
- duration += entry.getCount() * entry.getDelta();
- }
- return duration;
- }
-
- /**
- * {@inheritDoc}
- */
- public long[] sampleNumbers(Track track, Movie movie) {
- List<TimeToSampleBox.Entry> entries = track.getDecodingTimeEntries();
-
- double trackLength = 0;
- for (Track thisTrack : movie.getTracks()) {
- double thisTracksLength = getDuration(thisTrack) / thisTrack.getTrackMetaData().getTimescale();
- if (trackLength < thisTracksLength) {
- trackLength = thisTracksLength;
- }
- }
-
- int fragmentCount = (int)Math.ceil(trackLength / 2) - 1;
- if (fragmentCount < 1) {
- fragmentCount = 1;
- }
-
- long fragments[] = new long[fragmentCount];
- Arrays.fill(fragments, -1);
- fragments[0] = 1;
-
- long time = 0;
- int samples = 0;
- for (TimeToSampleBox.Entry entry : entries) {
- for (int i = 0; i < entry.getCount(); i++) {
- int currentFragment = (int) (time / track.getTrackMetaData().getTimescale() / 2) + 1;
- if (currentFragment >= fragments.length) {
- break;
- }
- fragments[currentFragment] = samples++ + 1;
- time += entry.getDelta();
- }
- }
- long last = samples + 1;
- // fill all -1 ones.
- for (int i = fragments.length - 1; i >= 0; i--) {
- if (fragments[i] == -1) {
- fragments[i] = last ;
- }
- last = fragments[i];
- }
- return fragments;
-
- }
-
-}