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

Commit a7ccd130 authored by Gil Dobjanschi's avatar Gil Dobjanschi Committed by Android (Google) Code Review
Browse files

Merge "Added audio and video codec parameters to the export method."

parents 373818ee 289f0899
Loading
Loading
Loading
Loading
+19 −13
Original line number Diff line number Diff line
@@ -130,36 +130,42 @@ public interface VideoEditor {
     * storyboard items. This method can take a long time to execute and is
     * blocking. The application will receive progress notifications via the
     * ExportProgressListener. Specific implementations may not support multiple
     * simultaneous export operations.
     *
     * Note that invoking methods which would change the contents of the output
     * movie throw an IllegalStateException while an export operation is
     * pending.
     * simultaneous export operations. Note that invoking methods which would
     * change the contents of the output movie throw an IllegalStateException
     * while an export operation is pending.
     *
     * @param filename The output file name (including the full path)
     * @param height The height of the output video file. The supported values
     *            for height are described in the MediaProperties class, for
     *            example: HEIGHT_480. The width will be automatically
     *            computed according to the aspect ratio provided by
     *            example: HEIGHT_480. The width will be automatically computed
     *            according to the aspect ratio provided by
     *            {@link #setAspectRatio(int)}
     * @param bitrate The bitrate of the output video file. This is approximate
     *            value for the output movie. Supported bitrate values are
     *            described in the MediaProperties class for example:
     *            BITRATE_384K
     * @param audioCodec The audio codec to be used for the export. The audio
     *            codec values are defined in the MediaProperties class (e.g.
     *            ACODEC_AAC_LC). Note that not all audio codec types are
     *            supported for export purposes.
     * @param videoCodec The video codec to be used for the export. The video
     *            codec values are defined in the MediaProperties class (e.g.
     *            VCODEC_H264BP). Note that not all video codec types are
     *            supported for export purposes.
     * @param listener The listener for progress notifications. Use null if
     *            export progress notifications are not needed.
     *
     * @throws IllegalArgumentException if height or bitrate are not supported.
     * @throws IllegalArgumentException if height or bitrate are not supported
     *             or if the audio or video codecs are not supported
     * @throws IOException if output file cannot be created
     * @throws IllegalStateException if a preview or an export is in progress or
     *             if no MediaItem has been added
     * @throws CancellationException if export is canceled by calling
     *             {@link #cancelExport()}
     * @throws UnsupportOperationException if multiple simultaneous export()
     *  are not allowed
     * @throws UnsupportOperationException if multiple simultaneous export() are
     *             not allowed
     */
    public void export(String filename, int height, int bitrate, ExportProgressListener listener)
            throws IOException;
    public void export(String filename, int height, int bitrate, int audioCodec, int videoCodec,
            ExportProgressListener listener) throws IOException;

    /**
     * Cancel the running export operation. This method blocks until the
+8 −2
Original line number Diff line number Diff line
@@ -1025,11 +1025,17 @@ public class VideoEditorTestImpl implements VideoEditor {
        }
    }

    /*
     * {@inheritDoc}
     */
    public void cancelExport(String filename) {
    }

    public void export(String filename, int height, int bitrate, ExportProgressListener listener)
            throws IOException {
    /*
     * {@inheritDoc}
     */
    public void export(String filename, int height, int bitrate, int audioCodec, int videoCodec,
            ExportProgressListener listener) throws IOException {
    }

    /*