Commit 50b276fe by Oliver Woodman

Fixed issue in which MediaChunk.seekToStart might not actually seek to the start of the segment.

parent 8cad3873
......@@ -73,9 +73,7 @@ public abstract class MediaChunk extends Chunk {
/**
* Seeks to the beginning of the chunk.
*/
public final void seekToStart() {
seekTo(startTimeUs, false);
}
public abstract void seekToStart();
/**
* Seeks to the specified position within the chunk.
......
......@@ -55,6 +55,12 @@ public final class Mp4MediaChunk extends MediaChunk {
}
@Override
public void seekToStart() {
extractor.seekTo(0, false);
resetReadPosition();
}
@Override
public boolean seekTo(long positionUs, boolean allowNoop) {
long seekTimeUs = positionUs + sampleOffsetUs;
boolean isDiscontinuous = extractor.seekTo(seekTimeUs, allowNoop);
......
......@@ -110,6 +110,11 @@ public class SingleSampleMediaChunk extends MediaChunk {
}
@Override
public void seekToStart() {
resetReadPosition();
}
@Override
public boolean seekTo(long positionUs, boolean allowNoop) {
resetReadPosition();
return true;
......
......@@ -51,6 +51,11 @@ public final class WebmMediaChunk extends MediaChunk {
}
@Override
public void seekToStart() {
seekTo(0, false);
}
@Override
public boolean seekTo(long positionUs, boolean allowNoop) {
boolean isDiscontinuous = extractor.seekTo(positionUs, allowNoop);
if (isDiscontinuous) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment