Commit 005e98fc by Oliver Woodman

Simplify parsing of encryption data + support SENC boxes.

Issue: #4
parent 8ec88402
...@@ -54,6 +54,7 @@ import java.util.List; ...@@ -54,6 +54,7 @@ import java.util.List;
public static final int TYPE_frma = 0x66726D61; public static final int TYPE_frma = 0x66726D61;
public static final int TYPE_saiz = 0x7361697A; public static final int TYPE_saiz = 0x7361697A;
public static final int TYPE_uuid = 0x75756964; public static final int TYPE_uuid = 0x75756964;
public static final int TYPE_senc = 0x73656E63;
public final int type; public final int type;
......
...@@ -27,12 +27,10 @@ package com.google.android.exoplayer.parser.mp4; ...@@ -27,12 +27,10 @@ package com.google.android.exoplayer.parser.mp4;
public int[] sampleDecodingTimeTable; public int[] sampleDecodingTimeTable;
public int[] sampleCompositionTimeOffsetTable; public int[] sampleCompositionTimeOffsetTable;
public boolean[] sampleIsSyncFrameTable; public boolean[] sampleIsSyncFrameTable;
public boolean[] sampleHasSubsampleEncryptionTable;
public int auxiliarySampleInfoTotalSize; public ParsableByteArray sampleEncryptionData;
public int[] auxiliarySampleInfoSizeTable; public boolean sampleEncryptionDataNeedsFill;
public boolean smoothStreamingUsesSubsampleEncryption;
public ParsableByteArray smoothStreamingSampleEncryptionData;
public void setSampleDescriptionIndex(int sampleDescriptionIndex) { public void setSampleDescriptionIndex(int sampleDescriptionIndex) {
this.sampleDescriptionIndex = sampleDescriptionIndex; this.sampleDescriptionIndex = sampleDescriptionIndex;
...@@ -47,16 +45,11 @@ package com.google.android.exoplayer.parser.mp4; ...@@ -47,16 +45,11 @@ package com.google.android.exoplayer.parser.mp4;
this.length = sampleSizeTable.length; this.length = sampleSizeTable.length;
} }
public void setAuxiliarySampleInfoTables(int totalAuxiliarySampleInfoSize, public void setSampleEncryptionData(boolean[] sampleHasSubsampleEncryptionTable,
int[] auxiliarySampleInfoSizeTable) { ParsableByteArray sampleEncryptionData, boolean sampleEncryptionDataNeedsFill) {
this.auxiliarySampleInfoTotalSize = totalAuxiliarySampleInfoSize; this.sampleHasSubsampleEncryptionTable = sampleHasSubsampleEncryptionTable;
this.auxiliarySampleInfoSizeTable = auxiliarySampleInfoSizeTable; this.sampleEncryptionData = sampleEncryptionData;
} this.sampleEncryptionDataNeedsFill = sampleEncryptionDataNeedsFill;
public void setSmoothStreamingSampleEncryptionData(ParsableByteArray data,
boolean usesSubsampleEncryption) {
this.smoothStreamingSampleEncryptionData = data;
this.smoothStreamingUsesSubsampleEncryption = usesSubsampleEncryption;
} }
public int getSamplePresentationTime(int index) { public int getSamplePresentationTime(int index) {
......
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