| Index: media/base/android/java/src/org/chromium/media/MediaCodecBridge.java
|
| diff --git a/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java b/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java
|
| index b8e2dc68f18e34a469df90a913901256de70e376..c0609331fb9bf5ed0c4ad69aee57bb7b51dd7659 100644
|
| --- a/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java
|
| +++ b/media/base/android/java/src/org/chromium/media/MediaCodecBridge.java
|
| @@ -656,11 +656,23 @@ class MediaCodecBridge {
|
|
|
| @CalledByNative
|
| private static void setCodecSpecificData(MediaFormat format, int index, byte[] bytes) {
|
| - String name = null;
|
| - if (index == 0) {
|
| - name = "csd-0";
|
| - } else if (index == 1) {
|
| - name = "csd-1";
|
| + // Codec Specific Data is set in the MediaFormat as ByteBuffer entries with keys csd-0,
|
| + // csd-1, and so on. See: http://developer.android.com/reference/android/media/MediaCodec.html
|
| + // for details.
|
| + String name;
|
| + switch (index) {
|
| + case 0:
|
| + name = "csd-0";
|
| + break;
|
| + case 1:
|
| + name = "csd-1";
|
| + break;
|
| + case 2:
|
| + name = "csd-2";
|
| + break;
|
| + default:
|
| + name = null;
|
| + break;
|
| }
|
| if (name != null) {
|
| format.setByteBuffer(name, ByteBuffer.wrap(bytes));
|
|
|