<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (C) 2019 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.
-->
<!-- TODO: define a targetNamespace. Note that it will break retrocompatibility -->
<xs:schema version="2.0"
           elementFormDefault="qualified"
           attributeFormDefault="unqualified"
           xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="MediaSettings">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="CamcorderProfiles" type="CamcorderProfiles" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="EncoderOutputFileFormat" minOccurs="0" maxOccurs="unbounded">
                    <xs:complexType>
                        <xs:attribute name="name" type="xs:string"/>
                    </xs:complexType>
                </xs:element>
                <xs:element name="VideoEncoderCap" type="VideoEncoderCap" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="AudioEncoderCap" type="AudioEncoderCap" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="VideoDecoderCap" type="VideoDecoderCap" minOccurs="0" maxOccurs="unbounded"/>
                <xs:element name="AudioDecoderCap" type="AudioDecoderCap" minOccurs="0" maxOccurs="unbounded"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <xs:complexType name="CamcorderProfiles">
        <xs:sequence>
            <xs:element name="EncoderProfile" type="EncoderProfile" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="ImageEncoding" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:attribute name="quality" type="xs:int"/>
                </xs:complexType>
            </xs:element>
            <xs:element name="ImageDecoding" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:attribute name="memCap" type="xs:int"/>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="cameraId" type="xs:int"/>
    </xs:complexType>
    <xs:complexType name="EncoderProfile">
        <xs:sequence>
            <xs:element name="Video" type="Video" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="Audio" type="Audio" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="quality" type="xs:string"/>
        <xs:attribute name="fileFormat" type="xs:string"/>
        <xs:attribute name="duration" type="xs:int"/>
    </xs:complexType>
    <xs:complexType name="Video">
        <xs:attribute name="codec" type="xs:string"/>
        <xs:attribute name="bitRate" type="xs:int"/>
        <xs:attribute name="width" type="xs:int"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="frameRate" type="xs:int"/>
    </xs:complexType>
    <xs:complexType name="Audio">
        <xs:attribute name="codec" type="xs:string"/>
        <xs:attribute name="bitRate" type="xs:int"/>
        <xs:attribute name="sampleRate" type="xs:int"/>
        <xs:attribute name="channels" type="xs:int"/>
    </xs:complexType>
    <xs:complexType name="VideoEncoderCap">
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="enabled" type="xs:boolean"/>
        <xs:attribute name="minBitRate" type="xs:int"/>
        <xs:attribute name="maxBitRate" type="xs:int"/>
        <xs:attribute name="minFrameWidth" type="xs:int"/>
        <xs:attribute name="maxFrameWidth" type="xs:int"/>
        <xs:attribute name="minFrameHeight" type="xs:int"/>
        <xs:attribute name="maxFrameHeight" type="xs:int"/>
        <xs:attribute name="minFrameRate" type="xs:int"/>
        <xs:attribute name="maxFrameRate" type="xs:int"/>
    </xs:complexType>
    <xs:complexType name="AudioEncoderCap">
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="enabled" type="xs:boolean"/>
        <xs:attribute name="minBitRate" type="xs:int"/>
        <xs:attribute name="maxBitRate" type="xs:int"/>
        <xs:attribute name="minSampleRate" type="xs:int"/>
        <xs:attribute name="maxSampleRate" type="xs:int"/>
        <xs:attribute name="minChannels" type="xs:int"/>
        <xs:attribute name="maxChannels" type="xs:int"/>
    </xs:complexType>
    <xs:complexType name="VideoDecoderCap">
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="enabled" type="xs:boolean"/>
    </xs:complexType>
    <xs:complexType name="AudioDecoderCap">
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="enabled" type="xs:boolean"/>
    </xs:complexType>
</xs:schema>
