<?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.
-->

<MediaCodecs>
    <Settings>
        <Setting name="max-video-encoder-input-buffers" value="4" />
    </Settings>
    <Include href="media_codecs_google_audio.xml" />
    <Include href="media_codecs_google_video.xml" />
    <Include href="media_codecs_cheets.xml" />
    <Include href="media_codecs_cheets_board_specific.xml" />
</MediaCodecs>
