<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright 2014 The Android Open Source Project

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<sample>
    <name>Camera2Video</name>
    <group>Media</group>
    <package>com.example.android.camera2video</package>

    <minSdk>21</minSdk>
    <targetSdkVersion>22</targetSdkVersion>

    <strings>
        <intro>
            <![CDATA[
            This sample demonstrates how to record video using Camera2 API.
            ]]>
        </intro>
    </strings>

    <template src="base"/>

    <metadata>
        <status>PUBLISHED</status>
        <categories>Media</categories>
        <technologies>Android</technologies>
        <languages>Java</languages>
        <solutions>Mobile</solutions>
        <level>ADVANCED</level>
        <icon>screenshots/icon-web.png</icon>
        <screenshots>
            <img>screenshots/1-launch.png</img>
            <img>screenshots/2-record.png</img>
            <img>screenshots/3-save.png</img>
        </screenshots>
        <api_refs>
            <android>android.hardware.camera2.CameraCaptureSession</android>
            <android>android.hardware.camera2.CameraDevice</android>
            <android>android.view.TextureView</android>
        </api_refs>
        <description>
<![CDATA[
This sample shows how to record video using the new Camera2 API in Android Lollipop.
]]>
        </description>

        <intro>
<![CDATA[
Android Lollipop introduced a new camera API, called camera2. This sample uses [CameraDevice][1]
and [CameraCaptureSession][2] to record video. It also uses a custom [TextureView][3] to render the output.

The main steps are:

1. Create a custom TextureView class and add it to the layout. The purpose of the custom TextureView is
to be able to draw itself according to an aspect ratio, which is set via a public method. Additionally,
the `onMeasure(int widthMeasureSpec, int heightMeasureSpec)` method is overridden, using the aspect ratio.
2. Implement a `TextureView.SurfaceTextureListener` on your TextureView, and override its
`onSurfaceTextureSizeChanged(SurfaceTexture surfaceTexture, int width, int height)` method to calculate
the matrix to apply to the TextureView so the camera output fits. Use the method `setTransform(matrix)` on
the TextureView.
3. Implement a [`CameraDevice.StateCallback`][4] to receive events about changes of the state of the
camera device. Override its methods to set your CameraDevice instance, start the preview, and stop
and release the camera.
4. When starting the preview, set up the MediaRecorder to accept video format.
5. Then, set up a [`CaptureRequest.Builder`][5] using `createCaptureRequest(CameraDevice.TEMPLATE_RECORD)`
on your CameraDevice instance.
6. Then, implement a [`CameraCaptureSession.StateCallback`][6], using the method
`createCaptureSession(surfaces, new CameraCaptureSession.StateCallback(){})` on your CameraDevice instance,
where `surfaces` is a list consisting of the surface view of your TextureView and the surface of
your MediaRecorder instance.
7. Use `start()` and `stop()` methods on your MediaRecorder instance to actually start and stop the recording.
8. Lastly, set up and clean up your camera device in `onResume()` and `onPause()`.


[1]: https://developer.android.com/reference/android/hardware/camera2/CameraDevice.html
[2]: http://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.html
[3]: http://developer.android.com/reference/android/view/TextureView.html
[4]: https://developer.android.com/reference/android/hardware/camera2/CameraDevice.StateCallback.html
[5]: http://developer.android.com/reference/android/hardware/camera2/CaptureRequest.Builder.html
[6]: http://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.StateCallback.html
]]>
        </intro>
    </metadata>

</sample>
