Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 637afb2d authored by Wonsik Kim's avatar Wonsik Kim
Browse files

MediaCodec: address API review #2

- Remove GraphicBlock and use HardwareBuffer instead.
- retrieveChangedKeys -> getChangedKeys
- More messages for Exceptions

Bug: 149487982
Test: atest CtsMediaTestCases -- --module-arg CtsMediaTestCases:size:small
Change-Id: I4d19a8dfa6b9f43005c3d3d8ecc840d16aebd356
parent bb576955
Loading
Loading
Loading
Loading
+5 −13
Original line number Original line Diff line number Diff line
@@ -16802,6 +16802,7 @@ package android.hardware {
    field public static final long USAGE_PROTECTED_CONTENT = 16384L; // 0x4000L
    field public static final long USAGE_PROTECTED_CONTENT = 16384L; // 0x4000L
    field public static final long USAGE_SENSOR_DIRECT_DATA = 8388608L; // 0x800000L
    field public static final long USAGE_SENSOR_DIRECT_DATA = 8388608L; // 0x800000L
    field public static final long USAGE_VIDEO_ENCODE = 65536L; // 0x10000L
    field public static final long USAGE_VIDEO_ENCODE = 65536L; // 0x10000L
    field public static final int YCBCR_420_888 = 35; // 0x23
  }
  }
  public final class Sensor {
  public final class Sensor {
@@ -25210,6 +25211,7 @@ package android.media {
    method @NonNull public android.media.MediaCodec.OutputFrame getOutputFrame(int);
    method @NonNull public android.media.MediaCodec.OutputFrame getOutputFrame(int);
    method @Nullable public android.media.Image getOutputImage(int);
    method @Nullable public android.media.Image getOutputImage(int);
    method @NonNull public android.media.MediaCodec.QueueRequest getQueueRequest(int);
    method @NonNull public android.media.MediaCodec.QueueRequest getQueueRequest(int);
    method @Nullable public static android.media.Image mapHardwareBuffer(@NonNull android.hardware.HardwareBuffer);
    method public void queueInputBuffer(int, int, int, long, int) throws android.media.MediaCodec.CryptoException;
    method public void queueInputBuffer(int, int, int, long, int) throws android.media.MediaCodec.CryptoException;
    method public void queueSecureInputBuffer(int, int, @NonNull android.media.MediaCodec.CryptoInfo, long, int) throws android.media.MediaCodec.CryptoException;
    method public void queueSecureInputBuffer(int, int, @NonNull android.media.MediaCodec.CryptoInfo, long, int) throws android.media.MediaCodec.CryptoException;
    method public void release();
    method public void release();
@@ -25310,17 +25312,7 @@ package android.media {
    method public void set(int, int);
    method public void set(int, int);
  }
  }
  public static final class MediaCodec.GraphicBlock {
    method protected void finalize();
    method public static boolean isCodecCopyFreeCompatible(@NonNull String[]);
    method public boolean isMappable();
    method @NonNull public android.media.Image map();
    method @NonNull public static android.media.MediaCodec.GraphicBlock obtain(int, int, int, long, @NonNull String[]);
    method public void recycle();
  }
  public class MediaCodec.IncompatibleWithBlockModelException extends java.lang.RuntimeException {
  public class MediaCodec.IncompatibleWithBlockModelException extends java.lang.RuntimeException {
    ctor public MediaCodec.IncompatibleWithBlockModelException();
  }
  }
  public static final class MediaCodec.LinearBlock {
  public static final class MediaCodec.LinearBlock {
@@ -25350,12 +25342,12 @@ package android.media {
  }
  }
  public static final class MediaCodec.OutputFrame {
  public static final class MediaCodec.OutputFrame {
    method @NonNull public java.util.Set<java.lang.String> getChangedKeys();
    method public int getFlags();
    method public int getFlags();
    method @NonNull public android.media.MediaFormat getFormat();
    method @NonNull public android.media.MediaFormat getFormat();
    method @Nullable public android.media.MediaCodec.GraphicBlock getGraphicBlock();
    method @Nullable public android.hardware.HardwareBuffer getHardwareBuffer();
    method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock();
    method @Nullable public android.media.MediaCodec.LinearBlock getLinearBlock();
    method public long getPresentationTimeUs();
    method public long getPresentationTimeUs();
    method public void retrieveChangedKeys(@NonNull java.util.Set<java.lang.String>);
  }
  }
  public final class MediaCodec.QueueRequest {
  public final class MediaCodec.QueueRequest {
@@ -25363,7 +25355,7 @@ package android.media {
    method @NonNull public android.media.MediaCodec.QueueRequest setByteBufferParameter(@NonNull String, @NonNull java.nio.ByteBuffer);
    method @NonNull public android.media.MediaCodec.QueueRequest setByteBufferParameter(@NonNull String, @NonNull java.nio.ByteBuffer);
    method @NonNull public android.media.MediaCodec.QueueRequest setFlags(int);
    method @NonNull public android.media.MediaCodec.QueueRequest setFlags(int);
    method @NonNull public android.media.MediaCodec.QueueRequest setFloatParameter(@NonNull String, float);
    method @NonNull public android.media.MediaCodec.QueueRequest setFloatParameter(@NonNull String, float);
    method @NonNull public android.media.MediaCodec.QueueRequest setGraphicBlock(@NonNull android.media.MediaCodec.GraphicBlock);
    method @NonNull public android.media.MediaCodec.QueueRequest setHardwareBuffer(@NonNull android.hardware.HardwareBuffer);
    method @NonNull public android.media.MediaCodec.QueueRequest setIntegerParameter(@NonNull String, int);
    method @NonNull public android.media.MediaCodec.QueueRequest setIntegerParameter(@NonNull String, int);
    method @NonNull public android.media.MediaCodec.QueueRequest setLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int, @Nullable android.media.MediaCodec.CryptoInfo);
    method @NonNull public android.media.MediaCodec.QueueRequest setLinearBlock(@NonNull android.media.MediaCodec.LinearBlock, int, int, @Nullable android.media.MediaCodec.CryptoInfo);
    method @NonNull public android.media.MediaCodec.QueueRequest setLongParameter(@NonNull String, long);
    method @NonNull public android.media.MediaCodec.QueueRequest setLongParameter(@NonNull String, long);
+5 −1
Original line number Original line Diff line number Diff line
@@ -46,7 +46,7 @@ import java.lang.annotation.RetentionPolicy;
public final class HardwareBuffer implements Parcelable, AutoCloseable {
public final class HardwareBuffer implements Parcelable, AutoCloseable {
    /** @hide */
    /** @hide */
    @Retention(RetentionPolicy.SOURCE)
    @Retention(RetentionPolicy.SOURCE)
    @IntDef(prefix = { "RGB", "BLOB", "D_", "DS_", "S_" }, value = {
    @IntDef(prefix = { "RGB", "BLOB", "YCBCR_", "D_", "DS_", "S_" }, value = {
            RGBA_8888,
            RGBA_8888,
            RGBA_FP16,
            RGBA_FP16,
            RGBA_1010102,
            RGBA_1010102,
@@ -54,6 +54,7 @@ public final class HardwareBuffer implements Parcelable, AutoCloseable {
            RGB_888,
            RGB_888,
            RGB_565,
            RGB_565,
            BLOB,
            BLOB,
            YCBCR_420_888,
            D_16,
            D_16,
            D_24,
            D_24,
            DS_24UI8,
            DS_24UI8,
@@ -79,6 +80,8 @@ public final class HardwareBuffer implements Parcelable, AutoCloseable {
    public static final int RGBA_1010102 = 0x2b;
    public static final int RGBA_1010102 = 0x2b;
    /** Format: opaque format used for raw data transfer; must have a height of 1 */
    /** Format: opaque format used for raw data transfer; must have a height of 1 */
    public static final int BLOB         = 0x21;
    public static final int BLOB         = 0x21;
    /** Format: Planar YCbCr 420; must have an even width and height */
    public static final int YCBCR_420_888 = 0x23;
    /** Format: 16 bits depth */
    /** Format: 16 bits depth */
    public static final int D_16         = 0x30;
    public static final int D_16         = 0x30;
    /** Format: 24 bits depth */
    /** Format: 24 bits depth */
@@ -396,6 +399,7 @@ public final class HardwareBuffer implements Parcelable, AutoCloseable {
            case RGB_565:
            case RGB_565:
            case RGB_888:
            case RGB_888:
            case BLOB:
            case BLOB:
            case YCBCR_420_888:
            case D_16:
            case D_16:
            case D_24:
            case D_24:
            case DS_24UI8:
            case DS_24UI8:
+104 −206

File changed.

Preview size limit exceeded, changes collapsed.

+156 −304

File changed.

Preview size limit exceeded, changes collapsed.