Merge "Fix MediaExtractor.getDrmInitData implementation for webm" into nyc-dev
This commit is contained in:
@@ -275,16 +275,23 @@ final public class MediaExtractor {
|
|||||||
return initDataMap.get(schemeUuid);
|
return initDataMap.get(schemeUuid);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
} else if (formatMap.containsKey("crypto-key")) {
|
} else {
|
||||||
ByteBuffer buf = (ByteBuffer) formatMap.get("crypto-key");
|
int numTracks = getTrackCount();
|
||||||
buf.rewind();
|
for (int i = 0; i < numTracks; ++i) {
|
||||||
final byte[] data = new byte[buf.remaining()];
|
Map<String, Object> trackFormatMap = getTrackFormatNative(i);
|
||||||
buf.get(data);
|
if (!trackFormatMap.containsKey("crypto-key")) {
|
||||||
return new DrmInitData() {
|
continue;
|
||||||
public SchemeInitData get(UUID schemeUuid) {
|
|
||||||
return new DrmInitData.SchemeInitData("webm", data);
|
|
||||||
}
|
}
|
||||||
};
|
ByteBuffer buf = (ByteBuffer) trackFormatMap.get("crypto-key");
|
||||||
|
buf.rewind();
|
||||||
|
final byte[] data = new byte[buf.remaining()];
|
||||||
|
buf.get(data);
|
||||||
|
return new DrmInitData() {
|
||||||
|
public SchemeInitData get(UUID schemeUuid) {
|
||||||
|
return new DrmInitData.SchemeInitData("webm", data);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user