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

Commit 83fe387b authored by Andy Hung's avatar Andy Hung Committed by Android Git Automerger
Browse files

am d5da651b: am b14b7e18: Merge "Fix AudioTrack, AudioRecord, AudioFormat API" into mnc-dev

* commit 'd5da651b':
  Fix AudioTrack, AudioRecord, AudioFormat API
parents 12b2e7c4 d5da651b
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -14801,8 +14801,8 @@ package android.media {
    ctor public AudioFormat.Builder();
    ctor public AudioFormat.Builder(android.media.AudioFormat);
    method public android.media.AudioFormat build();
    method public android.media.AudioFormat.Builder setChannelIndexMask(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioFormat.Builder setChannelMask(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioFormat.Builder setChannelIndexMask(int);
    method public android.media.AudioFormat.Builder setChannelMask(int);
    method public android.media.AudioFormat.Builder setEncoding(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioFormat.Builder setSampleRate(int) throws java.lang.IllegalArgumentException;
  }
@@ -14964,11 +14964,11 @@ package android.media {
    method public int getAudioFormat();
    method public int getAudioSessionId();
    method public int getAudioSource();
    method public int getBufferSizeInFrames();
    method public int getChannelConfiguration();
    method public int getChannelCount();
    method public android.media.AudioFormat getFormat();
    method public static int getMinBufferSize(int, int, int);
    method public int getNativeFrameCount() throws java.lang.IllegalStateException;
    method public int getNotificationMarkerPosition();
    method public int getPositionNotificationPeriod();
    method public android.media.AudioDeviceInfo getPreferredDevice();
@@ -15037,13 +15037,14 @@ package android.media {
    method public void flush();
    method public int getAudioFormat();
    method public int getAudioSessionId();
    method public int getBufferSizeInFrames();
    method public int getChannelConfiguration();
    method public int getChannelCount();
    method public android.media.AudioFormat getFormat();
    method public static float getMaxVolume();
    method public static int getMinBufferSize(int, int, int);
    method public static float getMinVolume();
    method public int getNativeFrameCount() throws java.lang.IllegalStateException;
    method protected deprecated int getNativeFrameCount();
    method public static int getNativeOutputSampleRate(int);
    method public int getNotificationMarkerPosition();
    method public int getPlayState();
+5 −4
Original line number Diff line number Diff line
@@ -16027,8 +16027,8 @@ package android.media {
    ctor public AudioFormat.Builder();
    ctor public AudioFormat.Builder(android.media.AudioFormat);
    method public android.media.AudioFormat build();
    method public android.media.AudioFormat.Builder setChannelIndexMask(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioFormat.Builder setChannelMask(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioFormat.Builder setChannelIndexMask(int);
    method public android.media.AudioFormat.Builder setChannelMask(int);
    method public android.media.AudioFormat.Builder setEncoding(int) throws java.lang.IllegalArgumentException;
    method public android.media.AudioFormat.Builder setSampleRate(int) throws java.lang.IllegalArgumentException;
  }
@@ -16200,11 +16200,11 @@ package android.media {
    method public int getAudioFormat();
    method public int getAudioSessionId();
    method public int getAudioSource();
    method public int getBufferSizeInFrames();
    method public int getChannelConfiguration();
    method public int getChannelCount();
    method public android.media.AudioFormat getFormat();
    method public static int getMinBufferSize(int, int, int);
    method public int getNativeFrameCount() throws java.lang.IllegalStateException;
    method public int getNotificationMarkerPosition();
    method public int getPositionNotificationPeriod();
    method public android.media.AudioDeviceInfo getPreferredDevice();
@@ -16275,13 +16275,14 @@ package android.media {
    method public void flush();
    method public int getAudioFormat();
    method public int getAudioSessionId();
    method public int getBufferSizeInFrames();
    method public int getChannelConfiguration();
    method public int getChannelCount();
    method public android.media.AudioFormat getFormat();
    method public static float getMaxVolume();
    method public static int getMinBufferSize(int, int, int);
    method public static float getMinVolume();
    method public int getNativeFrameCount() throws java.lang.IllegalStateException;
    method protected deprecated int getNativeFrameCount();
    method public static int getNativeOutputSampleRate(int);
    method public int getNotificationMarkerPosition();
    method public int getPlayState();
+4 −4
Original line number Diff line number Diff line
@@ -521,11 +521,11 @@ static jint android_media_AudioRecord_readInDirectBuffer(JNIEnv *env, jobject t
}

// ----------------------------------------------------------------------------
static jint android_media_AudioRecord_get_native_frame_count(JNIEnv *env,  jobject thiz) {
static jint android_media_AudioRecord_get_buffer_size_in_frames(JNIEnv *env,  jobject thiz) {
    sp<AudioRecord> lpRecorder = getAudioRecord(env, thiz);
    if (lpRecorder == NULL) {
        jniThrowException(env, "java/lang/IllegalStateException",
            "Unable to retrieve AudioRecord pointer for getNativeFrameCount()");
            "Unable to retrieve AudioRecord pointer for frameCount()");
        return (jint)AUDIO_JAVA_ERROR;
    }
    return lpRecorder->frameCount();
@@ -700,8 +700,8 @@ static JNINativeMethod gMethods[] = {
                                     (void *)android_media_AudioRecord_readInArray<jfloatArray>},
    {"native_read_in_direct_buffer","(Ljava/lang/Object;IZ)I",
                                       (void *)android_media_AudioRecord_readInDirectBuffer},
    {"native_get_native_frame_count",
                             "()I",    (void *)android_media_AudioRecord_get_native_frame_count},
    {"native_get_buffer_size_in_frames",
                             "()I", (void *)android_media_AudioRecord_get_buffer_size_in_frames},
    {"native_set_marker_pos","(I)I",   (void *)android_media_AudioRecord_set_marker_pos},
    {"native_get_marker_pos","()I",    (void *)android_media_AudioRecord_get_marker_pos},
    {"native_set_pos_update_period",
+2 −3
Original line number Diff line number Diff line
@@ -567,7 +567,7 @@ public class AudioFormat {
         *    if both channel index mask and channel position mask
         *    are specified but do not have the same channel count.
         */
        public @NonNull Builder setChannelMask(int channelMask) throws IllegalArgumentException {
        public @NonNull Builder setChannelMask(int channelMask) {
            if (channelMask == 0) {
                throw new IllegalArgumentException("Invalid zero channel mask");
            } else if (/* channelMask != 0 && */ mChannelIndexMask != 0 &&
@@ -619,8 +619,7 @@ public class AudioFormat {
         *    if both channel index mask and channel position mask
         *    are specified but do not have the same channel count.
         */
        public @NonNull Builder setChannelIndexMask(int channelIndexMask)
                throws IllegalArgumentException {
        public @NonNull Builder setChannelIndexMask(int channelIndexMask) {
            if (channelIndexMask == 0) {
                throw new IllegalArgumentException("Invalid zero channel index mask");
            } else if (/* channelIndexMask != 0 && */ mChannelMask != 0 &&
+5 −5
Original line number Diff line number Diff line
@@ -494,7 +494,7 @@ public class AudioRecord
         * than this size. See {@link #getMinBufferSize(int, int, int)} to determine the minimum
         * required buffer size for the successful creation of an AudioRecord instance.
         * Since bufferSizeInBytes may be internally increased to accommodate the source
         * requirements, use {@link #getNativeFrameCount()} to determine the actual buffer size
         * requirements, use {@link #getBufferSizeInFrames()} to determine the actual buffer size
         * in frames.
         * @param bufferSizeInBytes a value strictly greater than 0
         * @return the same Builder instance.
@@ -777,7 +777,7 @@ public class AudioRecord
    }

    /**
     *  Returns the "native frame count" of the <code>AudioRecord</code> buffer.
     *  Returns the frame count of the native <code>AudioRecord</code> buffer.
     *  This is greater than or equal to the bufferSizeInBytes converted to frame units
     *  specified in the <code>AudioRecord</code> constructor or Builder.
     *  The native frame count may be enlarged to accommodate the requirements of the
@@ -786,8 +786,8 @@ public class AudioRecord
     *  @return current size in frames of the <code>AudioRecord</code> buffer.
     *  @throws IllegalStateException
     */
    public int getNativeFrameCount() throws IllegalStateException {
        return native_get_native_frame_count();
    public int getBufferSizeInFrames() {
        return native_get_buffer_size_in_frames();
    }

    /**
@@ -1542,7 +1542,7 @@ public class AudioRecord
    private native final int native_read_in_direct_buffer(Object jBuffer,
            int sizeInBytes, boolean isBlocking);

    private native final int native_get_native_frame_count();
    private native final int native_get_buffer_size_in_frames();

    private native final int native_set_marker_pos(int marker);
    private native final int native_get_marker_pos();
Loading