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

Commit 08caf9e8 authored by James Dong's avatar James Dong Committed by Android Git Automerger
Browse files

am bb97d7bb: am 0467b0ab: Merge "Add a new public API to support recording...

am bb97d7bb: am 0467b0ab: Merge "Add a new public API to support recording rotated videos" into gingerbread

* commit 'bb97d7bb':
  Add a new public API to support recording rotated videos
parents 76b970cb bb97d7bb
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -101021,6 +101021,19 @@
<parameter name="listener" type="android.media.MediaRecorder.OnInfoListener">
</parameter>
</method>
<method name="setOrientationHint"
 return="void"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="degrees" type="int">
</parameter>
</method>
<method name="setOutputFile"
 return="void"
 abstract="false"
+25 −0
Original line number Diff line number Diff line
@@ -313,6 +313,31 @@ public class MediaRecorder
                    timeBetweenFrameCaptureMs));
    }

    /**
     * Sets the orientation hint for output video playback.
     * This method should be called before start(). This method will not
     * trigger the source video frame to rotate during video recording, but to
     * add a composition matrix containing the rotation angle in the output
     * video if the output format is OutputFormat.THREE_GPP or
     * OutputFormat.MPEG_4 so that a video player can choose the proper
     * orientation for playback. Note that some video players may choose
     * to ignore the compostion matrix in a video during playback.
     *
     * @param degrees the angle to be rotated clockwise in degrees.
     * The supported angles are 0, 90, 180, and 270 degrees.
     * @throws IllegalArgumentException if the angle is not supported.
     *
     */
    public void setOrientationHint(int degrees) {
        if (degrees != 0   &&
            degrees != 90  &&
            degrees != 180 &&
            degrees != 270) {
            throw new IllegalArgumentException("Unsupported angle: " + degrees);
        }
        setParameter(String.format("video-param-rotation-angle-degrees=%d", degrees));
    }

    /**
     * Sets the format of the output file produced during recording. Call this
     * after setAudioSource()/setVideoSource() but before prepare().