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

Commit 4ba6b69c authored by Ray Essick's avatar Ray Essick
Browse files

Opus Encoding plumbing

Bug: 111850384
Test: with omx codec
Change-Id: I8bf80ebd925bf31aabe5f90556af57de890e351d
parent 01ce8981
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -24783,6 +24783,7 @@ package android.media {
    field public static final int MUXER_OUTPUT_3GPP = 2; // 0x2
    field public static final int MUXER_OUTPUT_HEIF = 3; // 0x3
    field public static final int MUXER_OUTPUT_MPEG_4 = 0; // 0x0
    field public static final int MUXER_OUTPUT_OGG = 4; // 0x4
    field public static final int MUXER_OUTPUT_WEBM = 1; // 0x1
  }
@@ -25078,6 +25079,7 @@ package android.media {
    field public static final int AMR_WB = 2; // 0x2
    field public static final int DEFAULT = 0; // 0x0
    field public static final int HE_AAC = 4; // 0x4
    field public static final int OPUS = 7; // 0x7
    field public static final int VORBIS = 6; // 0x6
  }
@@ -25128,6 +25130,7 @@ package android.media {
    field public static final int DEFAULT = 0; // 0x0
    field public static final int MPEG_2_TS = 8; // 0x8
    field public static final int MPEG_4 = 2; // 0x2
    field public static final int OGG = 11; // 0xb
    field public static final deprecated int RAW_AMR = 3; // 0x3
    field public static final int THREE_GPP = 1; // 0x1
    field public static final int WEBM = 9; // 0x9
+5 −2
Original line number Diff line number Diff line
@@ -18,10 +18,10 @@ package android.media;

import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.UnsupportedAppUsage;
import android.media.MediaCodec;
import android.media.MediaCodec.BufferInfo;

import dalvik.system.CloseGuard;

import java.io.FileDescriptor;
@@ -269,8 +269,10 @@ final public class MediaMuxer {
        public static final int MUXER_OUTPUT_3GPP   = MUXER_OUTPUT_FIRST + 2;
        /** HEIF media file format*/
        public static final int MUXER_OUTPUT_HEIF   = MUXER_OUTPUT_FIRST + 3;
        /** Ogg media file format*/
        public static final int MUXER_OUTPUT_OGG   = MUXER_OUTPUT_FIRST + 4;
        /** @hide */
        public static final int MUXER_OUTPUT_LAST   = MUXER_OUTPUT_HEIF;
        public static final int MUXER_OUTPUT_LAST   = MUXER_OUTPUT_OGG;
    };

    /** @hide */
@@ -279,6 +281,7 @@ final public class MediaMuxer {
        OutputFormat.MUXER_OUTPUT_WEBM,
        OutputFormat.MUXER_OUTPUT_3GPP,
        OutputFormat.MUXER_OUTPUT_HEIF,
        OutputFormat.MUXER_OUTPUT_OGG,
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface Format {}
+7 −4
Original line number Diff line number Diff line
@@ -22,17 +22,17 @@ import android.annotation.SystemApi;
import android.annotation.UnsupportedAppUsage;
import android.app.ActivityThread;
import android.hardware.Camera;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.os.PersistableBundle;
import android.text.TextUtils;
import android.util.ArrayMap;
import android.util.Log;
import android.util.Pair;
import android.view.Surface;

import com.android.internal.annotations.GuardedBy;

import java.io.File;
import java.io.FileDescriptor;
import java.io.IOException;
@@ -41,8 +41,6 @@ import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.List;

import com.android.internal.annotations.GuardedBy;

/**
 * Used to record audio and video. The recording control is based on a
 * simple state machine (see below).
@@ -450,6 +448,9 @@ public class MediaRecorder implements AudioRouting

        /** VP8/VORBIS data in a WEBM container */
        public static final int WEBM = 9;

        /** Opus data in a Ogg container */
        public static final int OGG = 11;
    };

    /**
@@ -474,6 +475,8 @@ public class MediaRecorder implements AudioRouting
        public static final int AAC_ELD = 5;
        /** Ogg Vorbis audio codec */
        public static final int VORBIS = 6;
        /** Opus audio codec */
        public static final int OPUS = 7;
    }

    /**