Example usage for android.media MediaFormat getByteBuffer

List of usage examples for android.media MediaFormat getByteBuffer

Introduction

In this page you can find the example usage for android.media MediaFormat getByteBuffer.

Prototype

public final ByteBuffer getByteBuffer(String name) 

Source Link

Document

Returns the value of a ByteBuffer key.

Usage

From source file:com.sonymobile.android.media.internal.Util.java

public static MediaCrypto createMediaCrypto(MediaFormat format) throws MediaCryptoException {
    if (format.containsKey(MetaData.KEY_PLAYREADY_SESSIONID)) {
        ByteBuffer buffer = format.getByteBuffer(MetaData.KEY_PLAYREADY_SESSIONID);
        if (buffer != null) {
            return new MediaCrypto(DrmUUID.PLAY_READY, buffer.array());
        }/*from w w  w.ja v a2s .  co  m*/
    } else if (format.containsKey(MetaData.KEY_MARLIN_JSON)) {
        byte[] marlinJson;
        try {
            marlinJson = format.getString(MetaData.KEY_MARLIN_JSON).getBytes("UTF-8");
        } catch (UnsupportedEncodingException e) {
            if (LOGS_ENABLED)
                Log.e(TAG, "Unsupported encoding", e);
            return null;
        }

        return new MediaCrypto(DrmUUID.MARLIN, marlinJson);
    }

    return null;
}

From source file:com.serenegiant.media.TLMediaEncoder.java

private static final String asString(final MediaFormat format) {
    final JSONObject map = new JSONObject();
    try {/*from  w ww.  j  av a 2 s  . c o  m*/
        if (format.containsKey(MediaFormat.KEY_MIME))
            map.put(MediaFormat.KEY_MIME, format.getString(MediaFormat.KEY_MIME));
        if (format.containsKey(MediaFormat.KEY_WIDTH))
            map.put(MediaFormat.KEY_WIDTH, format.getInteger(MediaFormat.KEY_WIDTH));
        if (format.containsKey(MediaFormat.KEY_HEIGHT))
            map.put(MediaFormat.KEY_HEIGHT, format.getInteger(MediaFormat.KEY_HEIGHT));
        if (format.containsKey(MediaFormat.KEY_BIT_RATE))
            map.put(MediaFormat.KEY_BIT_RATE, format.getInteger(MediaFormat.KEY_BIT_RATE));
        if (format.containsKey(MediaFormat.KEY_COLOR_FORMAT))
            map.put(MediaFormat.KEY_COLOR_FORMAT, format.getInteger(MediaFormat.KEY_COLOR_FORMAT));
        if (format.containsKey(MediaFormat.KEY_FRAME_RATE))
            map.put(MediaFormat.KEY_FRAME_RATE, format.getInteger(MediaFormat.KEY_FRAME_RATE));
        if (format.containsKey(MediaFormat.KEY_I_FRAME_INTERVAL))
            map.put(MediaFormat.KEY_I_FRAME_INTERVAL, format.getInteger(MediaFormat.KEY_I_FRAME_INTERVAL));
        if (format.containsKey(MediaFormat.KEY_REPEAT_PREVIOUS_FRAME_AFTER))
            map.put(MediaFormat.KEY_REPEAT_PREVIOUS_FRAME_AFTER,
                    format.getLong(MediaFormat.KEY_REPEAT_PREVIOUS_FRAME_AFTER));
        if (format.containsKey(MediaFormat.KEY_MAX_INPUT_SIZE))
            map.put(MediaFormat.KEY_MAX_INPUT_SIZE, format.getInteger(MediaFormat.KEY_MAX_INPUT_SIZE));
        if (format.containsKey(MediaFormat.KEY_DURATION))
            map.put(MediaFormat.KEY_DURATION, format.getInteger(MediaFormat.KEY_DURATION));
        if (format.containsKey(MediaFormat.KEY_CHANNEL_COUNT))
            map.put(MediaFormat.KEY_CHANNEL_COUNT, format.getInteger(MediaFormat.KEY_CHANNEL_COUNT));
        if (format.containsKey(MediaFormat.KEY_SAMPLE_RATE))
            map.put(MediaFormat.KEY_SAMPLE_RATE, format.getInteger(MediaFormat.KEY_SAMPLE_RATE));
        if (format.containsKey(MediaFormat.KEY_CHANNEL_MASK))
            map.put(MediaFormat.KEY_CHANNEL_MASK, format.getInteger(MediaFormat.KEY_CHANNEL_MASK));
        if (format.containsKey(MediaFormat.KEY_AAC_PROFILE))
            map.put(MediaFormat.KEY_AAC_PROFILE, format.getInteger(MediaFormat.KEY_AAC_PROFILE));
        if (format.containsKey(MediaFormat.KEY_AAC_SBR_MODE))
            map.put(MediaFormat.KEY_AAC_SBR_MODE, format.getInteger(MediaFormat.KEY_AAC_SBR_MODE));
        if (format.containsKey(MediaFormat.KEY_MAX_INPUT_SIZE))
            map.put(MediaFormat.KEY_MAX_INPUT_SIZE, format.getInteger(MediaFormat.KEY_MAX_INPUT_SIZE));
        if (format.containsKey(MediaFormat.KEY_IS_ADTS))
            map.put(MediaFormat.KEY_IS_ADTS, format.getInteger(MediaFormat.KEY_IS_ADTS));
        if (format.containsKey("what"))
            map.put("what", format.getInteger("what"));
        if (format.containsKey("csd-0"))
            map.put("csd-0", asString(format.getByteBuffer("csd-0")));
        if (format.containsKey("csd-1"))
            map.put("csd-1", asString(format.getByteBuffer("csd-1")));
    } catch (JSONException e) {
        Log.e(TAG_STATIC, "writeFormat:", e);
    }

    return map.toString();
}