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

Commit 2a48d422 authored by Lajos Molnar's avatar Lajos Molnar Committed by Android Git Automerger
Browse files

am 7c9ed471: Merge changes I1fd178b6,I5093672e into lmp-preview-dev

* commit '7c9ed471c6f5e7d21b49be1105c973d3a8473d59':
  DO NOT MERGE: media.MediaCodec: hide NotificationCallback listener
  media.MediaCodec: document and fix-up setNotificationCallback
parents b9dfb12d a6716aad
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -14289,7 +14289,6 @@ package android.media {
    method public final void release();
    method public final void releaseOutputBuffer(int, boolean);
    method public final void releaseOutputBuffer(int, long);
    method public void setNotificationCallback(android.media.MediaCodec.NotificationCallback);
    method public final void setParameters(android.os.Bundle);
    method public final void setVideoScalingMode(int);
    method public final void signalEndOfInputStream();
@@ -14339,10 +14338,6 @@ package android.media {
    field public int numSubSamples;
  }
  public static abstract interface MediaCodec.NotificationCallback {
    method public abstract void onCodecNotify(android.media.MediaCodec);
  }
  public final class MediaCodecInfo {
    method public final android.media.MediaCodecInfo.CodecCapabilities getCapabilitiesForType(java.lang.String);
    method public final java.lang.String getName();
+30 −2
Original line number Diff line number Diff line
@@ -744,12 +744,40 @@ final public class MediaCodec {
        setParameters(keys, values);
    }

    /**
     * Sets the codec listener for actionable MediaCodec events.
     * <p>Call this method with a null listener to stop receiving event notifications.
     *
     * @param cb The listener that will run.
     *
     * @hide
     */
    public void setNotificationCallback(NotificationCallback cb) {
        mNotificationCallback = cb;
    }

    public interface NotificationCallback {
        void onCodecNotify(MediaCodec codec);
    /**
     * MediaCodec listener interface.  Used to notify the user of MediaCodec
     * when there are available input and/or output buffers, a change in
     * configuration or when a codec error happened.
     *
     * @hide
     */
    public static abstract class NotificationCallback {
        /**
         * Called on the listener to notify that there is an actionable
         * MediaCodec event.  The application should call {@link #dequeueOutputBuffer}
         * to receive the configuration change event, codec error or an
         * available output buffer.  It should also call  {@link #dequeueInputBuffer}
         * to receive any available input buffer.  For best performance, it
         * is recommended to exhaust both available input and output buffers in
         * the handling of a single callback, by calling the dequeue methods
         * repeatedly with a zero timeout until {@link #INFO_TRY_AGAIN_LATER} is returned.
         *
         * @param codec the MediaCodec instance that has an actionable event.
         *
         */
        public abstract void onCodecNotify(MediaCodec codec);
    }

    private void postEventFromNative(